进制转换

Posted wangzihong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进制转换相关的知识,希望对你有一定的参考价值。

1.3进制转换

二进制:由2个数字组成,有0 1                 例:  0b101 
八进制:由8个数字组成,有0,1,2,3,4,5,6,7        例:  0o127
十进制:有10个数字组成,有0,1,2,3,4,5,6,7,8,9   例:  250
十六进制:有16个数字组成,有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f(字母大小写都可以,分别代表10,11,12,13,14,15) 例:0xff  0Xff  0XFF        

1.3.1 二进制 转化成 十进制

#例: 0b10100101  
运算:1* 2^0 + 0* 2^1 + 1* 2^2 + 0* 2^3 + 0* 2^4 + 1* 2^5 + 0* 2^6 + 1* 2^7=
1 + 0 + 4 + 0 + 0 + 32 + 0 + 128 = 165

1.3.2 八进制 转化成 十进制

#例: 0o127
运算:7*8^0 + 2*8^1 + 1*8^2 = 7+16+64 = 87

1.3.3 十六进制 转化成 十进制

#例: 0xff
运算:15*16^0 + 15*16^1 = 255

*小练习: 转化成对应进制

723 => 2 
654 => 2
723 => 8  
654 => 8
723 => 16
654 => 16

1.3.4 十进制 转化成 二进制

426 => 0b110101010  
运算过程:   用426除以2,得出的结果再去不停地除以2,
直到除完最后的结果小于2停止,
在把每个阶段求得的余数从下到上依次拼接完毕即可

1.3.5 十进制 转化成 八进制

426 => 0o652
运算过程:   用426除以8,得出的结果再去不停地除以8,
直到除完最后的结果小于8停止,
在把每个阶段求得的余数从下到上依次拼接完毕即可

1.3.6 十进制 转化成 十六进制

运算过程:   用426除以16,得出的结果再去不停地除以16,
直到除完最后的结果小于16停止,
在把每个阶段求得的余数从下到上依次拼接完毕即可

*小练习: 转化成对应进制

723 => 2 
654 => 2
723 => 8  
654 => 8
723 => 16
654 => 16

1.3.7 二进制与八进制转换

二进制与八进制对应关系:
八进制 二进制
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
例:1010100101
八进制:从右向左 3位一隔开 不够三位用0补位 变成:
001 010 100 101
0o   1   2   4   5

1.3.8 二进制与十六进制转换

十六进制  二进制
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
a 1010
b 1011
c 1100
d 1101
e 1110
f 1111
例:1010100101
十六进制:从右向左 4位一隔开 不够四位用0补位 变成:
0010 1010 0101
0x2a5

1.3.9 八进制 与 十六进制的转换

先转换成二进制 再去对应转换 
比如:0x2a5 转换成 1010100101 再转8进制 0o1245

*小练习: 转化成对应进制

0x1DD => 8 
0x29a => 8
0o573 => 16
0o336 => 16

以上是关于进制转换的主要内容,如果未能解决你的问题,请参考以下文章

进制转换

PHP进制转换[实现28163664进制至10进制相互转换]

进制转换,请将一个n进制的数转换成m进制的数,并输出.

Java十进制与其他进制相互转换

Java十进制与其他进制相互转换

编程算法基础-2.3进制转换