首先请注意:B(Binary)表示二进制,O(Octal)表示八进制,D(Decimal)或不加表示十进制,H(Hexadecimal)表示十六进制
二、八、十六进制转化为十进制的方法:
一、将二进制转化为十进制
方法:二进制数从低位到高位(即从右往左)计算,例如,二进制数(101011):
转为十进制:
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;
把结果值相加,1+2+0+8+0+32=43,即(101011)B=(43)D。
二、将八进制转为十进制
方法:二进制数从低位到高位(即从右往左)计算,例如,八进制数(101):
八进制就是逢8进1,八进制数采用 0~7这八数来表达一个数。
转为十进制:
1. 第0位 1 x 8^0 = 1;
2. 第1位 0 x 8^1 = 0;
3. 第2位 1 x 8^2 = 64;
把结果值相加,1+0+64=65,即(101)O=(65)D。三、将十六进制转为十进制
十六进制就是逢16进1,十六进制的16个数为0123456789ABCDEF。
方法:二进制数从低位到高位(即从右往左)计算,例如,十六进制数(3D):
1. 第0位 Dx 16^0 = 13;
2. 第1位 3x 16^1 = 48;
把结果值相加,13+48=61,即(3D)H=(61)D。
十进制转化为二、八、十六进制(用余数法)
一、十进制转化为二进制
方法:除2取余法,即每次将整数部分除以2,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。
例如:将十进制的(43)D转化为二进制:
所以:最后一位是经过多次除以2才得到的,因此它是最高位,读数字从最后的余数向前读,101011,即(43)D=(101011)B。
二、将十进制转化为八进制
方法1:除8取余法,即每次将整数部分除以8,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。
例:将十进制的(796)D转换为八进制:
最后一位是经过多次除以8才得到的,因此它是最高位,读数字从最后的余数向前读,1434,即(796)D=(1434)O。
方法2:使用间接法,先将十进制转换成二进制,然后将二进制又转换成八进制;
三、将十进制转化为十六进制
方法1:除16取余法,即每次将整数部分除以16,余数为该位权上的数,而商继续除以16,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数起,一直到最前面的一个余数。
例:将十进制的(796)D转换为十六进制:
最后一位是经过多次除以16才得到的,因此它是最高位,读数字从最后的余数向前读,31C,即(796)D=(31C)H。
方法2:使用间接法,先将十进制转换成二进制,然后将二进制又转换成十六进制;