进制介绍及进制之间的转换
进制介绍
对于整数,有四种表示方式:
- 二进制:0,1,满2进一。以0b或者0B开头。
- 十进制:0-9,满10进一。
- 八进制:0-7,满8进一。以数字0开头。
- 十六进制:0-9及A(10)-F(15),满16进一。以0x或者0X开头表示,此处的A-F不区分大小写。
进制之间的转换
-
二进制转十进制
方法:从最低位(右边)开始,将每个位上的数字提取出来,乘以2的(位数-1)次方,然后求和。
案例:0b1011 = 1×2的0次方 + 1×2的1次方 + 0×2的2次方 + 1×2的3次方 = 11 -
八进制转十进制
方法:从最低位(右边)开始,将每个位上的数字提取出来,乘以8的(位数-1)次方,然后求和。
案例:0234 = 4×8的0次方 + 3×8的1次方 + 2×8的2次方 = 156 -
十六进制转十进制
方法:从最低位(右边)开始,将每个位上的数字提取出来,乘以16的(位数-1)次方,然后求和。
案例:0x23A = A×16的0次方 + 3×16的1次方 + 2×16的2次方 = 570 -
十进制转二进制
方法:将该数不断除以2,直到商为0为止,然后将每步得到的余数倒过来,就是对应的二进制。
案例:34 = 0b00100010,(备注:因为一个字节有8位,所以在转成二进制的时候要在得到的结果前面补上0凑够8位)
![]()
-
十进制转八进制
方法:将该数不断除以8,直到商为0为止,然后将每步得到的余数倒过来,就是对应的八进制。
案例:131 = 0203
![]()
-
十进制转十六进制
方法:将该数不断除以16,直到商为0为止,然后将每步得到的余数倒过来,就是对应的十六进制。
案例:237 = 0xED
![]()
-
二进制转八进制
方法:从低位开始,将二进制数每三位一组,转成对应的八进制即可。
案列:0b11010101 = 0325
101 = 1×2的0次方 + 0×2的1次方 + 1×2的2次方 = 5
010 = 2;11 = 3
然后从左到右依次写下来(加上八进制的开头)就OK了。 -
二进制转十六进制
方法:从低位开始,将二进制数每四位一组,转成对应的十六进制即可。
案例:0b11010101 = 0xD5
0101 = 1×2的0次方 + 0×2的1次方 + 1×2的2次方 + 0×2的3次方 = 5
1101 = 13——>D
然后从左到右依次写下来(加上十六进制的开头)就OK了。 -
八进制转二进制
方法:将八进制数每一位,转成对应的一个3位的二进制数即可。
案例:0237 = 0b10011111
7 = 111
![]()
-
十六进制转二进制
方法:将十六进制数的每一位,转成对应的4位的一个二进制数即可。
案例:0x23B = 0b 0010 0011 1011
![]()






浙公网安备 33010602011771号