十进制转二进制:
用2辗转相除至结果为1
将余数和最后的1从下向上倒序写 就是结果
例如302
302/2 = 151 余0
151/2 = 75 余1
75/2 = 37 余1
37/2 = 18 余1
18/2 = 9 余0
9/2 = 4 余1
4/2 = 2 余0
2/2 = 1 余0
故二进制为100101110
二进制转十进制
从最后一位开始算,依次列为第0、1、2...位
第n位的数(0或1)乘以2的n次方
得到的结果相加就是答案
例如:01101011.转十进制:
第0位:1乘2的0次方=1
1乘2的1次方=2
0乘2的2次方=0
1乘2的3次方=8
0乘2的4次方=0
1乘2的5次方=32
1乘2的6次方=64
0乘2的7次方=0
然后:1+2+0
+8+0+32+64+0=107.
二进制01101011=十进制107
16进制转10进制:
像10进制数一样的说,把16进制数看成有个位数,十位数,百位数……
将“个位数”乘上16的0次方(*16^0),
将“十位数”乘上16的1次方(*16^1),
将“百位数”乘上16的2次方(*16^2),
……
……
最后将所有上面得到的数加起来就是他的十进制数了
例如:将16进制的 (10A) 转换成10进制的数
A*1=10
0*16=0
1*16^2=256
所以所得的数为10+0+256=266
10进制转16进制:
这个有点麻烦……
将给定的十进制整数除以基数16,余数便是等值的16进制的最低位。
将上一步的商再除以基数16,余数便是等值的16进制数的次低位。
重复上一步骤,直到最后所得的商等于0为止。各次除得的余数,便是16进制各位的数,最后一次的余数是最高位
例如:10进制的 (100) 变为16进制
先把100除以16,得到6余数为4,则“个位数”为4;
用6除以16,得到0余数为6,则“十位数”为6。所以100的16进制为“64”。
依此类推。
注:
A=10 B=11 C=12 D=13 E=14 F=15
原文地址:http://blog.csdn.net/u011374880/article/details/42679353