最近复习软考各种进制之间的转换着实让人头疼,今天把常用的几种进制之间的转换问题简单做个总结,希望能够对大家有所帮助。
二进制与八进制之间的关系式每个八进制位对应三个二进制位,详情如下:
八进制: 0 1 2 3 4 5 6 7
二进制:000 001 010 011 100 101 110 111
实例:
27.651(8) 010111.110101001(2)
1001.000101(2) 11.05(8)
二进制转换为十进制就是将二进制第i位的值乘以2的i-1次方。
例如:10110101转换为十进制就是1*2的1-1次方+0*2的2-1次方+1*2的3-1次方+0*2的4-1次方+1*2的5-1次方+1*2的6-1次方+0*2的7-1次方+1*2的8-1次方=1+0+4+0+16+32+0+128=181
十进制转换成二进制就是用2除要转换的十进制,直到商为0,并将所有的余数从后往前连起来就是转换成功后对应的二进制。
例如:181转换为二进制,181/2=90余1,90/2=45余0,45/2=22余1,22/2=11余0,11/2=5余1,5/2=2余1,,2/2=1余0,1/2=0余1,最后结果为10110101。
二进制与十六进制的对应关系为每个十六进制位对应4个二进制位,详情如下:
十六进制:0 1 2 3 4 5 6 7 8 9 A B C D E F
二进制: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
实例:FA8765(16) 111110101000011101100101(2)
这个与二进制转十进制类似,将八进制的第i位的值乘以8的i-1次方。
例如:F76转换为十进制就是6*8的1-1次方+7*8的2-1次方+15*8的3-1次方=6+56+960=1122
十进制转八进制就是用8除要转换的十进制,直到商为0然后把所有的余数从后往前连起来就是软还成功的八进制。
例如181转换为八进制,181/8=22余5,22/8=2余6,2/8=0余2,最后结果为265
一般情况我们不对这两种进制直接进行转换,而是先将八进制或者十六进制转换为二进制,然后再进行二进制与八进制或者16进制进行转换。
十六进制与八进制都是由二进制演变来的,所以十六进制余十进制之间的转换可以参照十进制与二进制或者十进制与八进制之间的转换规则,原理都是一样的,这里就不重复介绍了。
以上是能是进制直接转换的一些方法,当然还可能其他的转换方式,希望大家多多交流,有不足之处请大家批评指正。
原文:http://blog.csdn.net/u010926964/article/details/45176187