在计算机系统中使用的常用进位计算制有下列几种:
二进制(Binary)R=2, 基本符号为0,1。
八进制(Octal)R=8, 基本符号为0,1,2,3,4,5,6,7。
十进制(Decimal)R=10, 基本符号为0,1,2,3,4,5,6,7,8,9。
十六进制(Hexadecimal)R=16, 基本符号为0,1,2,3,4,5,6,7,8,9,A,B,C,D。
四种进制之间的对应关系如下
二进制 | 八进制 | 十进制 | 十六进制 |
0000 | 0 | 0 | 0 |
0001 | 1 | 1 | 1 |
0010 | 2 | 2 | 2 |
0011 | 3 | 3 | 3 |
0100 | 4 | 4 | 4 |
0101 | 5 | 5 | 5 |
0110 | 6 | 6 | 6 |
0111 | 7 | 7 | 7 |
1000 | 10 | 8 | 8 |
1001 | 11 | 9 | 9 |
1010 | 12 | 10 | A |
1011 | 13 | 11 | B |
1100 | 14 | 12 | C |
1101 | 15 | 13 | D |
1110 | 16 | 14 | E |
1111 | 17 | 15 | F |
1、R进制数转换成十进制
任何一个R进制数转换成十进制数时,只要“按权展开”即可。
例子、将二进制数(10101.01)2转换成十进制数。
解:(10101.01)2=(1*24+0*23+1*22+0*21+1*20+0*2-1+1*2-2)10
=(1*16 +0*8+1*4+0*2+1*1+0*0.5+1*0.25)=(21.25)10
2、十进制数转换成R进制数
任何一个十进制数转换成R进制数时,要将整数和小数部分分别进行转换。
(1)整数部分的转换
整数部分的转换方法是“除基取余,上右下左”。也就是说,用要转换的十进制整数去除以基数R,将得到的余数作为结果数据中各位的数字,直到余数为0为止。上面的余数(先得到的余数)作为右边低位上的数位,下面的余数作为左边高位上的数位。
(2)小数部分的转换
小数部分的转换方法是“乘基取整,上左下右”。也就是说,用要转换的十进制小数去乘以基数R,将得到的乘积的整数部分作为结果数据中各位的数字,小数部分继续与基数R相乘。以此类推,直到某一步乘积的小数部分为0或已得到希望的位数为止。最后,将上面的整数部分作为左边高位上的数位,下面的整数部分作为右边低位上的数位。
(3)含整数、小数部分的数的转换