二进制、八进制、十进制、十六进制之间转换
一、
十进制与二进制之间的转换
(
1
)
十进制转换为二进制,分为整数部分和小数部分
①
整数部分
方法:除
2
取余法,即每次将整数部分除以
2
,余数为该位权上的数,而商继续除以
2
,余数又为上
一个位权上的数,这个步骤一直持续下去,直到商为
0
为止,最后读数时候,从最后一个余数读起,
一直到最前面的一个余数。下面举例:
例:将十进制的
168
转换为二进制
得出结果
将十进制的
168
转换为二进制,
(
10101000
)
2
分析
:
第一步,将
168
除以
2,
商
84,
余数为
0
。
第二步,将商
84
除以
2
,商
42
余数为
0
。
第三步,将商
42
除以
2
,商
21
余数为
0
。
第四步,将商
21
除以
2
,商
10
余数为
1
。
第五步,将商
10
除以
2
,商
5
余数为
0
。
第六步,将商
5
除以
2
,商
2
余数为
1
。
第七步,将商
2
除以
2
,商
1
余数为
0
。
第八步,将商
1
除以
2
,商
0
余数为
1
。
第九步,读数,因为最后一位是经过多次除以
2
才得到的,因此它是最高位,读数字从最后的余数向
前读,即
10101000
(
2
)
小数部分
方法:乘
2
取整法,即将小数部分乘以
2
,然后取整数部分,剩下的小数部分继续乘以
2
,然后取整
数部分,剩下的小数部分又乘以
2
,一直取到小数部分
为零为止。如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时,就根据
后面一位是
0
还是
1
,取舍,如果是零,舍掉,如果是
1
,向入一位。换句话说就是
0
舍
1
入。读数
要从前面的整数读到后面的整数,下面举例:
例
1
:将
0.125
换算为二进制
得出结果:将
0.125
换算为二进制(
0.001
)
2
分析:第一步,将
0.125
乘以
2
,得
0.25,
则整数部分为
0,
小数部分为
0.25;
第二步
,
将小数部分
0.25
乘以
2,
得
0.5,
则整数部分为
0,
小数部分为
0.5;
第三步
,
将小数部分
0.5
乘以
2,
得
1.0,
则整数部分为
1,
小数部分为
0.0;
第四步
,
读数
,
从第一位读起
,
读到最后一位
,
即为
0.001
。
例
2,
将
0.45
转换为二进制(保留到小数点第四位)
大家从上面步骤可以看出,当第五次做乘法时候,得到的结果是
0.4
,那么小数部分继续乘以
2
,得
0.8
,
0.8
又乘以
2
的,到
1.6
这样一直乘下去,最后不可能得到小数部分为零,因此,这个时候只好