![Jack](https://eastit.cn/zb_users/avatar/0.png)
将八进制数字0~7按以下方式转换,即二进制。
0-000
1-001
2-010
3-011
4-100
5-101
6-110
7-111
也就是说,把每个数字转换成三位二进制数就够了。
原理是每个八位字节都是1,8是二进制的1000,1是二进制的1。
因此,8和1的二进制表示相差3位。
所以8位转换成二进制,但是把每一位都转换成二进制是不合适的,需要补三位。
当然,转换成二进制后,可以去掉从第一个位置开始的连续的零。
十进制n到二进制:
n除以2取整数部分,以此类推直到1,得到一个数列;
然后反过来写这个序列对2的余数。
比如十进制111 (111),得到的序列是111,55,27,13,6,3,1。
序列2的余数是1,1,1,1,0,1,1。
反向串联成数字字符串1101111,它是111的二进制表示形式。8位转换为2位转换。每一位的数值应分别从8位变为2位。比如357把8位数转换成2位数制:7变成111;5变成101;3变成011。结果是011101111,应该去掉前导0,最后结果是11101111。二进制和十六进制之间的关系
二进制0000 0001 0010 0011 0100 0101 0111
十六进制01234567
二进制1000 1001 101011111001101111111111011111111
十六进制89A(10)B(11)C(12)D(13)E(14)F(15)
原理:由于十六进制数的基数是2的四次方,所以二进制数转换成十六进制。如果是整数,就从它的低位到高位每四位组成一组,然后用十六进制表示每组二进制数对应的数。如果有小数部分,从小数点开始,按所述方法分组向左右计算。
实例:将二进制数1110111转换为十六进制数。
二进制数(0)1110111
十六进制数字77
结果是77
如二进制“1011011011”:
换成八进制时,从右到左,一组三位数不够填0,即:
010 110 111 011
然后每组中的数字3分别对应4、2、1的状态,再加上1的状态【备注】,比如:
010=2
110=4 2=6
111=4 2 1=7
011=2 1=3
结果:2673二进制转八进制的一个技巧就是低位到高位三联体的转换。
你可以把这个分为101对八进制和110对八进制。
101到八进制是1*2*2 0*2 1=5。同样的原理是110在八进制中是6。
所以101110是56。