1.3.2不同进制数之间的转化
相关术语:返回来时的路
1.数码:一组用来表示某种数制的符号
2.基数:数制所使用的数码的个数
3.位权:数码在不同位置上的权值
十进制数各位的位权
十进制367.5 | 位权 | 值 |
---|---|---|
百位(3) | 102 | 100 |
十位(6) | 101 | 10 |
个位(7) | 100 | 1 |
小数位(5) | 10-1 | 0.1 |
二进制数各位的位权
位数 | 位权 | 值 |
---|---|---|
第8位 | 27 | 128 |
第7位 | 26 | 64 |
第6位 | 25 | 32 |
第5位 | 24 | 16 |
第4位 | 23 | 8 |
第3位 | 22 | 4 |
第2位 | 21 | 2 |
小数点前第1位 | 20 | 1 |
小数点后第1位 | 2-1 | ½ |
小数点后第2位 | 2-2 | ¼ |
小数点后第3位 | 2-3 | ⅛ |
一、非十进制数转化为十进制数
方法:按位权展开求和
例1:二
进制数转化为十
进制数
(1101.11)2 = 1×23 + 1×22 + 0×21 + 1×20 + 1×2-1 + 1×2-2
= 8 + 4 + 0 + 1 + 0.5 + 0.25
= (13.75)10
= 8 + 4 + 0 + 1 + 0.5 + 0.25
= (13.75)10
例2:八
进制数转化为十
进制数
(36.5)8 = 3×81 + 6×80 + 5×8-1
= 24 + 6 + 0.625
= (30.625)10
= 24 + 6 + 0.625
= (30.625)10
例3:十六
进制数转化为十
进制数
(2D.C)16 = 2×161 + D×160 + C×16-1
= 32 + 13 + 0.75
= (45.75)10
= 32 + 13 + 0.75
= (45.75)10
二、十进制数转化为非十进制数
注意:(整数部分,小数部分用不同的方法转化)
1.整数部分方法:采用除基取余
法。直到商为0
为止,把得到的余数倒排
例1:十
进制数整数
转化为二
进制数
(25)10 = (11001)2
25 ÷ 2 = 商12余数1
12 ÷ 2 = 商6余数0
6 ÷ 2 = 商3余数0
3 ÷ 2 = 商1余数1
1 ÷ 2 = 商0余数1
25 ÷ 2 = 商12余数1
12 ÷ 2 = 商6余数0
6 ÷ 2 = 商3余数0
3 ÷ 2 = 商1余数1
1 ÷ 2 = 商0余数1
例2:十
进制数整数
转化为八
进制数
(25)10 = (31)8
25 ÷ 8 = 商3余数1
3 ÷ 8 = 商0余数3
25 ÷ 8 = 商3余数1
3 ÷ 8 = 商0余数3
例3:十
进制数整数
转化为十六
进制数
(25)10 = (19)16
25 ÷ 16 = 商1余数9
1 ÷ 16 = 商0余数1
25 ÷ 16 = 商1余数9
1 ÷ 16 = 商0余数1
2.小数部分方法:采用乘基取整
法。把得到的整数正排
例1:十
进制小数
数转化为二
进制数
(0.75)10 = (0.11)2
0.75×2 = 1.5 取整数1
0.5×2 = 1.0 取整数1
0.75×2 = 1.5 取整数1
0.5×2 = 1.0 取整数1
(0.25)10 = (0.01)2
0.25×2 = 0.5 取整数0
0.5×2 = 1.0 取整数1
0.25×2 = 0.5 取整数0
0.5×2 = 1.0 取整数1
例2:十
进制小数
数转化为八
进制数
(0.75)10 = (0.6)8
0.75×8 = 6.0 取整数6
0.75×8 = 6.0 取整数6
(0.25)10 = (0.2)8
0.25×8 = 2.0 取整数2
0.25×8 = 2.0 取整数2
例3:十
进制小数
数转化为十六
进制数
(0.75)10 = (0.C)16
0.75×16 = 12.0 取整数12
0.75×16 = 12.0 取整数12
(0.25)10 = (0.4)16
0.25×16 = 4.0 取整数4
0.25×16 = 4.0 取整数4
注意:并非所有十进制小数都能准确的转化为非十进制数
例:十
进制小数0.33
数转化为二进制数
进制数
(0.33)10 = (0.010101)2
0.33×2 = 0.66 取整数0
0.66×2 = 1.32 取整数1
0.32×2 = 0.64 取整数0
0.64×2 = 1.28 取整数1
0.28×2 = 0.56 取整数0
0.56×2 = 1.12 取整数1
……… ………
0.33×2 = 0.66 取整数0
0.66×2 = 1.32 取整数1
0.32×2 = 0.64 取整数0
0.64×2 = 1.28 取整数1
0.28×2 = 0.56 取整数0
0.56×2 = 1.12 取整数1
……… ………
三、非十进制数之间的转化
例1:二
进制数转化为八
进制数(421)
(10 110 101 100.01)2 = (2654.2)8
例2:二
进制数转化为十六
进制数(8421)
(10 1100 1011 0110.011)2 = (2CB6.6)16
例3:八
进制数转化为二
进制数(421)
(365.4)8 = (011 110 101.100)2
= (11110101.1)2
= (11110101.1)2
例4:十六
进制数转化为二
进制数(8421)
(9C7.6)16 = (1001 1100 0111.0110)2
= (100111000111.011)2
= (100111000111.011)2
例5:十六
进制数与八
进制数之间不能直接转化,需要先将其转化为二
进制数才行。
(完)