2016.1.26 进制转换

2016.1.26

二进制

1:二进制转8进制(3位为一组)

(11001111.01111)2=(11 001 111.011 110)2=(317.36)8

1*21+1*20=3  1*20=1  1*22+1*21+1*20=7  1*21+1*20=3  1*22+1*21=6

2:二进制转10进制

(10110)2=(22)10

1*24+1*22+1*21=22

3:二进制转16进制(4位为一组)

(11010110)2=(D6)16

1101=1*23+1*22+1*20=13=D

0110=1*22+1*21=6

8进制

1:8进制转2进制

(17.36)8=(001 111 .011 110)2=(1111.01111)2

1/2=0 ……1

7/2=3 ……1

3/2=1 ……1

1/2=0 ……1

001 111

3/2=1 ……1

1/2=0 ……1

6/2=3 ……0

3/2=1 ……1

1/2=0 ……1

011 110

2:8进制转10进制

128=1*81+2*80=10

3:8进制转16进制

先将八进制化为二进制,再将二进制化为十六进制。

(712)8 = (111 001 01 0)2 = (1CA)16

10进制

1:10进制转2进制

1310=(1101)2

13/2=6 ……1

6/2=3 ……0

3/2=1 ……1

1/2=0 ……1

(1101)

2:10进制转8进制

(115)10 = (163)8

115/8=14 ……3

14/8=1 …….6

1/8=0 ……1

163

3:10进制转16进制

13810=(8A)16

138/16=8 ……10=A

8/16=0 ……8

8A

16进制

1:16进制转2进制

(41)16=(01000001)2

4/2=2 ……0

2/2=1 ……0

1/2=0 ……1

100

1/2=0 ……1

0100 0001

2:16进制转8进制

(1CA)16 = (111001010)2 = (712)8

12/2=6 ……0

6/2=3 ……0

3/2=1 ……1

1/2=0 ……1

1100

10/2=5 ……0

5/2=2 ……1

2/2=1 ……0

1/2=0 ……1

1010

1*22+1*21+1*20=7

1*21=2

712

3:16进制转10进制

(41)16=6510

4*161+1*160=65

时间: 2024-10-03 21:54:20

2016.1.26 进制转换的相关文章

Spreadsheets codeforces1B(模拟+进制转换)

http://codeforces.com/problemset/problem/1/B 题意:转换两种行和列的表示方法. 分析:(弱弱的说下一开始自己并不会写,只是想到AA=26*1+1,就想着用除法和余数来解决了,后来发现这么模拟下去,数据好大啊,心好累..然后就没有然后了).后来问的别人,告诉我用26进制转换(我去,我为啥想不到,啥都别说了,看代码) #include <iostream> #include <stdio.h> #include <string.h>

03 php 数据类型:整数,进制转换,浮点,字符,布尔,数组,空类型,类型转换,算术运算,比较运算

03 数据类型:整数,进制转换,浮点,字符,布尔,数组,空类型,类型转换, 算术运算,比较运算,逻辑运算,短路现象, 三目运算符,字符型运算: 数据类型 整体划分 标量类型: int, float, string, bool 复合类型: array,     object 特殊类型: null,     resouce 整数类型int, integer 3种整数表示法 十进制写法:123: $n1 = 123; 八进制写法: 0123 $n2 = 0123; 十六进制写法: 0x123 $n3

黑马程序员------进制转换

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训..Net培训</a>.期待与您交流! ------- 在java中数字的表现形式一般有二进制,八进制,十进制,十六进制等,在平时的编程中我们可以通过java提供的API函数方便的实现各个进制间的转换,如:Integer.toHexString(int i)--十进制转十六进制:Integer

2~62位任意进制转换(c++)

进制转换的符号表为[0-9a-zA-Z],共61个字符,最大可表示62进制. 思路是原进制先转换为10进制,再转换到目标进制. 疑问: 对于负数,有小伙伴说可以直接将符号丢弃,按照整数进行进位转换,最后再将负号补回来,我认为这种做法是不对的. 正确的做法是:考虑好按照16位(short)还是32位(int)抑或64位(long long),先求出二进制补码(这时候就正负数就统一了),将二进制数转换为十进制后在转换为其他进制(如果有小伙伴知道如何直接将二进制转换为任意进制的方法可以留言告诉我,不胜

九度oj 题目1080:进制转换

题目描述: 将M进制的数X转换为N进制的数输出. 输入: 输入的第一行包括两个整数:M和N(2<=M,N<=36). 下面的一行输入一个数X,X是M进制的数,现在要求你将M进制的数X转换成N进制的数输出. 输出: 输出X的N进制表示的数. 样例输入: 16 10 F 样例输出: 15 提示: 输入时字母部分为大写,输出时为小写,并且有大数据. 这题初看起来另我头疼,考虑不难但是很麻烦 一开始想的比较绕,准备先把任意进制转换成10进制,再转化成n进制,于是写出了下面的代码 1 #include

JS中的进制转换以及作用

js的进制转换, 分为2进制,8进制,10进制,16进制之间的相互转换, 我们直接利用 对象.toString()即可实现: //10进制转为16进制 (10).toString(16) // =>"a" //8进制转为16进制 (012).toString(16) // =>"a" //16进制转为10进制 (0x16).toString(10) // =>"22" //16进制转为8进制 (0x16).toString(8)

自制进制转换终极版

/** * 自制进制转换终极版 * 过程不重复了. */ public class TransFinal { public static void main(String[] args) { int num = 26; String hex = toHex(num); String oct = toOct(num); String bin = toBin(num); System.out.println("十六进制: "+ hex); System.out.println("

hdu 2031 进制转换

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2031 题目大意:进制转换,先变成十进制在进行进制间的转化. 1 #include<stdio.h> 2 int main() 3 { 4 int n,m,i,j,f,p; 5 char a[200]; 6 while(scanf("%d%d",&n,&m)!=EOF) 7 { 8 i=0; 9 p=0; 10 if(n<0) 11 { 12 p=-1; 1

lua之m进制转换为n进制-任意进制转换算法

够无聊的写这个,为防止需要的人也无聊一遍,写个吧 算法有n种,但是,咱们一种就够用了 1 --数组倒序排列 2 local function orderByDesc( input ) 3 local output = {} 4 local count = #input 5 while count > 0 do 6 table.insert(output, input[count] ) 7 count = count -1 8 end 9 return output 10 end 11 12 --