十进制数转换为二进制数、八进制数、十六进制数的方法:
二进制数、八进制数、十六进制数转换为十进制数的方法:按权展开求和法
1.二进制与十进制间的相互转换:
(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.25)10
=(11.25)10
规律:个位上的数字的次数是0,十位上的数字的次数是1,......,依奖递增,而十
分位的数字的次数是-1,百分位上数字的次数是-2,......,依次递减。
注意:不是任何一个十进制小数都能转换成有限位的二进制数。
(2)十进制转二进制
· 十进制整数转二进制数:“除以2取余,逆序排列”(短除反取余法)
89)10 =(1011001)2
2 89
2 44 ……1
2 22 ……0
2 11 ……0
2 5 ……1
2 2 ……1
2 1 ……0
0 ……1
· 十进制小数转二进制数:“乘以2取整,顺序排列”(乘2取整法)
(0.625)10= (0.101)2
.625
X 2
.25 1
X 2
.5 0
X 2
.0 1
2.八进制与二进制的转换:
二进制数转换成八进制数:从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足3位的要用“0”补足3位,就得到一个八进制数。
八进制数转换成二进制数:把每一个八进制数转换成3位的二进制数,就得到一个二进制数。
例:将八进制的37.416转换成二进制数:
3 7 . 4 1 6
011 111 .100 001 110
即:(37.416)8 =(11111.10000111)2
例:将二进制的10110.0011 转换成八进制:
0 1 0 1 1 0 . 0 0 1 1 0 0
2 6 . 1 4
10110.011)2 = (26.14)8
3.十六进制与二进制的转换:
二进制数转换成十六进制数:从小数点开始,整数部分向左、小数部分向右,每4位为一组用一位十六进制数的数字表示,不足4位的要用“0”补足4位,就得到一个十六进制数。
十六进制数转换成二进制数:把每一个十六进制数转换成4位的二进制数,就得到一个二进制数。
例:将十六进制数5DF.9 转换成二进制:
. 9
.1001
5DF.9)16 =(10111011111.1001)2
例:将二进制数1100001.111 转换成十六进制:
. 1110
. E
1100001.111)2 =(61.E)16
注意:以上所说的二进制数均是无符号的数。这些数的范围如下表:
无符号位二进制数位数 数值范围 十六进制范围表示法
8位二进制数 0~255 (255=28-1) 00~0FFH
16位二进制数 0~65535 (65535=216-1) 0000H~0FFFFH
32位二进制数 0~232-1 00000000H~0FFFFFFFFH