- 大学计算机
- 冯素琴 李静 徐莉主编
- 819字
- 2021-03-23 12:45:31
1.4.3 常用数制之间的转换
1.二进制数和十进制数之间的转换
二进制数转换为十进制数按照各自数制性质展开即可。例如,二进制数(11011.101)B转换为十进制数展开如下:
(11011.101)B=24+23+21+1+2-1+2-3=(27.625)D
十进制数转换为二进制数,整数部分的转换采用“除2取余”。十进制数整数部分除以2得到余数和商,再用得到的商依次除以2,直到商为0时结束,第一次得到的余数就是相应二进制数整数部分的最低位,第二次得到次低位,最后得到的余数为最高位,依次排列。
例:十进制整数(58)D转换成二进制整数,如图1-6所示。
所以,(58)D=(111010)B。
图1-6 十进制整数转换成二进制整数
十进制数转换为二进制数,小数部分的转换采用“乘2取整”。十进制小数部分乘2,积分为整数部分和小数部分,将积的小数部分继续乘2,直到积的小数部分为0时结束。这样依次得到一系列整数,第一次乘2得到的整数就是相应二进制数小数部分的最高位,第二次乘2得到的整数就是相应二进制数小数部分的次高位,最后乘2得到的整数就是相应二进制数小数部分的最低位,依次排列。
例:十进制小数(0.6875)D转换成二进制小数,如图1-7所示。
所以,(0.6875)D=(0.1011)B
图1-7 十进制小数转换成二进制小数
2.二进制数和十六进制数之间的转换
每位十六进制数与4位二进制数之间有一一对应关系,如表1-3所示。
表1-3 二进制数和十六进制数的对应关系
1位十六进制数可以直接转换为4位二进制数,如十六进制数(1A63.B5)H转换成二进制数示例如下:
(1A63.B5)H=(0001 1010 0110 0011.1011 0101)B
1 A 6 3 . B 5
每4位二进制数也可以直接转换为1位十六进制数,整数部分从最低位起,每4位一组进行分组,不足4位在高位前添“0”补足4位;小数部分从最高位起,每4位一组进行分组,不足四位在最低位后添“0”补足4位。分组后每组的4位二进制数分别可以转换成各自相应的1位十六进制数。
例如,将二进制数(1101101111.110101)B转换成十六进制数:
(0011 0110 1111.1101 0100)B=(36F.D4)H
3 6 F D 4
在整数部分最高位前添两个“0”,补足4位成“0011”;在小数部分最低位后添两个“0”,补足四位成“0100”。