进制之间的转换(二进制、八进制、十进制和十六进制之间的相互转换1.十进制→二进制)

1.十进制→二进制

计算出想要的数需要哪些数字相加,然后在其下写1,空余的使用0表示,这样就可以得出对应的二进制数

方法二:

十进制数依次整除2,直至商为0,所得的余数按照相反的顺序写出。即可以可出对应的二进制

例如:89的二进制就是 0b1 0 1 1 0 0 1

依次整除2所得的商         89/2 = 44   44/2 = 22    22/2 = 11    11/2 = 5      5/2 = 2     2/2 = 1        1/2 = 0

依次整除2所得的余数        1                0                  0                1                 1              0                 1

按照相反的顺序写出得出 1 0 1 1 0 0 1   (26 + 24 + 23 + 21 =64 + 16 + 8 + 1 = 89)

2.二进制数→十进制数

计算公式:a*20+b*21+c*22+d*23+……+n*2(n-1)=

此公式中,a表示二进制的右边的第一位数,b表示二进制的右边的第二位数,以此类推

例如:11001写成十进制就是25

11001 = 1*20 + 0*21 + 0*22 + 1*23 + 1*24 = 1 + 0 + 0 + 8 + 16 = 25

3.十进制→八进制(同十进制→二进制)

十进制数依次整除8,直至商为0,所得的余数按照相反的顺序写出,即为其八进制

例如:65写成八进制就是0o101

依次整除8所得的商          65/8 = 8        8/8 = 1      1/8 = 0     

依次整除8所得的余数     1     0                1

按照相反的顺序写出  101 (1*80 + 0*81 + 1*82 = 1 + 0 + 64 = 65)

4.八进制→十进制(同二进制→十进制

计算公式:a*80+b*81+c*82+d*83+……+n*8(n-1)=

此公式中,a表示二进制数的右边第一位数,b表示二进制数的右边第二位数,以此类推。

5.十六进制数:十六进制数为0,1,2,3,4,5,6,7,8,9,A(10),B(11),C(12),D(13),E(14),F(15)

(1)十进制→十六进制(同十进制→二进制)

 45的十六进制是2D

   依次整除8所得的商    45/16 = 2       2/16 = 0

   依次整除8所得的余数    13                2

 按照相反的顺序写出2D 

(2)十六进制→十进制(同二进制→十进制)

计算公式:a*160+b*161+c*162+d*163+……+n*16(n-1)=

此公式中,a表示二进制数的右边第一位数,b表示二进制数的右边第二位数,以此类推。

6.二进制→八进制

例如               100   110   001

转八进制          4       6      1

从二进制数右边起每三个数字所代表的十进制中的和为八进制数的一个数字,即二进制数100 110 001写成八进制数为461。

7.八进制→二进制

二进制→八进制的反过程(一位数拆成二进制的三位数)

八进制675写成二进制数为110  111  101

8.二进制→十六进制

示例:        二进制数      1011  0100 0111 1001

           转十六进制数        A      5      7       9

从二进制数右边起每四个数字所代表的十进制中的和为十六进制数的一个数字,即二进制数1011 0100 0111 1001写成十六进制数为A579。

9.十六进制→二进制

二进制→十六进制的反过程(一位数拆成二进制的四位数)

示例:十六进制数8765写成二进制数为1000 0111 1001 0101

原文地址:https://www.cnblogs.com/cxq0017/p/9307252.html