计算机中的进制转换

阅读量: 168 编辑

1、二进制转十进制

方法:按权展开求和。

(1011.01)2

= (1*23 + 0*22 + 1*21 + 1*20 + 0*2-1 + 1*2-2)10

= (8 + 0 + 2 + 1 + 0 + 0.5)10

= (11.25)10

2、十进制转二进制

十进制整数转二进制:除以2取余,逆序输出。

(89)10 = (1011001)2

89 / 2 = 44 ... 1
44 / 2 = 22 ... 0
22 / 2 = 11 ... 0
11 / 2 = 5  ... 1
5  / 2 = 2  ... 1
2  / 2 = 1  ... 0
1  / 2 = 0  ... 1

从下往上逆序,得到 (1011001)2

十进制小数转二进制:乘以2取整,顺序输出。

(0.625)10 = (0.101)2

0.625 * 2 = 1.25  取整 1 
0.25  * 2 = 0.5   取整 0
0.5   * 2 = 1     取整 1

从上往下顺序,得到 (101)2

3、八进制与二进制的转换

将八进制 37.416 转换成二进制数。

(37.416)8 = (11111.10000111)2

 3    7   .    4     1     6
011  111  .   100   001   110

将每个位上面的数字转换成二进制即可(3位个为一组)。

将二进制 10110.0011 转换成八进制。

(10110.0011)2 = (26.14)8

010  110  .  001  100
 2    6   .   1    4

从小数点开始,往两边数,3位为一组(8进制)。

4、十六进制与二进制的转换

将十六进制数 5DF.9 转换成二进制

  5     D     F   .    9 
0101  1101  1111  .  1001

将每个位上面的数字转换成二进制即可(4个位为一组)。

(5DF.9)16 = (1011101111.1001)2

将二进制数 110001.111 转换成十六进制数

(110001.111)2 = (61.E)16

0011    0001   .   1110
 6       1     .     E

从小数点开始,往两边数,4位为一组(16进制)。

5、八进制、十六进制和十进制转换

这个转换类似于二进制,进行基数和权的运算即可。

(36)8 = 3*81 + 6*80 = 24 + 6 = (30)10

(1E)16 = 1*161 + 14*160 = 16 + 14 = (30)10

十进制转换成八进制和十六进制,除以基数取余数即可。

爱码岛编程公众号
微信扫码关注
爱码岛编程小程序
微信扫码打开
苏ICP备13052010号
©2023 南京匠成信息科技有限公司