【软考】进制的转换

来源:互联网 发布:truelicense源码包 编辑:程序博客网 时间:2024/06/06 01:08
  • 2,8,16进制 → 十进制

方法:数值从低位到高位(即从右往左)计算,第0位的权值是2(8,16)的0次方,第1位的权值是2(8,16)的1次方,第2位的权值是2(8,16)的2次方,依次递增下去,把最后的结果相加的值就是十进制的值了

例如:

例:将二进制的(101011)B转换为十进制的步骤如下:

1. 第0位 1 x 2^0 = 1;

2. 第1位 1 x 2^1 = 2;

3. 第2位 0 x 2^2 = 0;

4. 第3位 1 x 2^3 = 8;

5. 第4位 0 x 2^4 = 0;

6. 第5位 1 x 2^5 =32;

7. 读数,把结果值相加,1+2+0+8+0+32=43,即(101011)B=(43)D。


8,16进制中,将上面的2换成8,16,同样步骤计算结果。

  • 十进制 → 2,8,16进制

方法:除2(8,16)取余法,即每次将整数部分除以2(8,16),余数为该位权上的数,而商继续除以2(8,16),余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。 

例:将十进制的(43)D转换为二进制的步骤如下:

1. 将商43除以2,商21余数为1;

2. 将商21除以2,商10余数为1;

3. 将商10除以2,商5余数为0;

4. 将商5除以2,商2余数为1;

5. 将商2除以2,商1余数为0; 

6. 将商1除以2,商0余数为1; 

7. 读数,因为最后一位是经过多次除以2才得到的,因此它是最高位,读数字从最后的余数向前读,101011,即(43)D=(101011)B。


8,16进制中,将上面的2换成8,16,同样步骤计算结果。

  • 二进制 →8,10,16进制
原创粉丝点击