二进制、八进制、十进制、十六进制相互之间的转换:

1.二进制与十进制

1)十进制转二进制

十进制转二进制,把要转换的数,除以2,得到商和余数,将商继续除以2,直到商为0。最后将所有余数倒序排列,得到转换结果。 如图,以十进制的6为例,三次相除得到余数分别为0、1、1,倒序排列为110,所以十进制6转换为二进制为110。

2进制0b python 2进制转换_2进制0b python

2)二进制转十进制

二进制转十进制,从右到左用二进制位上的每个数去乘以2的相应次方,例如,将最右边第一位的数乘以2的0次方,第二位的数乘以2的1次方,第n位的数乘以2的n-1次方,然后把所有乘得的结果相加,得到的结果就是转换后的十进制。以二进制数0110 0100转十进制为例:

2进制0b python 2进制转换_八进制、十六进制转十进制_02

得到的100就是二进制0110 0100转换十进制后的结果。

 

2.二进制与八进制

二进制与八进制值对应关系表

二进制

八进制

二进制

八进制

二进制

八进制

二进制

八进制

000

0

010

2

100

4

110

6

001

1

011

3

101

5

111

7

1)二进制转八进制

首先将二进制数00101010从右至左每三位分成一段,不足三位的左边补0:000 101 010

然后将每段的数值分别查表替换,结果如下:

000 —>0
101 —>5
010 —>2

组合得到结果052(注意八进制必须以0开头)。

2)八进制转二进制

先将052分成三位:0 5 2;

将每位查表写成二进制数:

0 —>000
5 —>101
2 —>010

组合得到结果000101010。

 

3.二进制与十六进制

二进制与十六进制值对应关系表

二进制

十六进制

二进制

十六进制

二进制

十六进制

二进制

十六进制

0000

0

0100

4

1000

8

1100

C

0001

1

0101

5

1001

9

1101

D

0010

2

0110

6

1010

A

1110

E

0011

3

0111

7

1011

B

1111

F

1)二进制转十六进制

首先将二进制数10100101从右至左每四位分成一段,不足四位的左边补0:1010 0101

然后将每段的数值分别查表替换,结果如下:

1010 —>A
0101 —>5

组合得到结果0xA5或0XA5(注意十六进制必须以0x或0X开头)。

2)十六进制转二进制

先将A5分成两位:A 5;

将每位查表写成二进制数:

A —>1010
5 —>0101

组合得到结果1010 0101。

 

4.十进制转八进制、十六进制、n进制

十进制转n进制,把要转换的数,除以n,得到商和余数,将商继续除以n,直到商为0。最后将所有余数倒序排列,得到转换结果。

 

5.八进制、十六进制、n进制转十进制

n进制转十进制,从右到左用n进制位上的每个数去乘以n的相应次方,例如,将最右边第一位的数乘以n的0次方,第二位的数乘以n的1次方,第n位的数乘以n的n-1次方,然后把所有乘得的结果相加,得到的结果就是转换后的十进制。

 

6.八进制与十六进制之间转换

八进制与十六进制间转换可以通过先转换成二进制后再转换为相应进制来完成。