0x开头 十六进制 0x34
0开头 八进制 064
0b开头 二进制 0b00110100
转换后得到的十进制是 52
进制转换
二进制转换十进制
0b00110100
转换十进制
二进制数的第0位的权值是2的0次方,第一位的权值是2的1次方......
0 * Math.pow(2,0) + 0 * Math.pow(2,1) + 1 * Math.pow(2,2) + 0 * Math.pow(2,3) + 1 * Math.pow(2,4) + 1 * Math.pow(2,5) + 0 * Math.pow(2,6) + 0 * Math.pow(2,7) = 32 + 16 + 4 = 52
十六进制转换十进制
0x34
转换十六进制
16进制就是每逢16就进1, A,B,C,D,E,F 对应表示 10,11,12,13,14,15 不区分大小写
4 * Math.pow(16,0) + 3 * Math.pow(16,1) = 52
十六进制转换成二进制
34
十六进制数通过除2取余法,得到二进制数,对每个十六进制为4个二进制,不足时在最左边补零。
- 3/2 = 1 //余 1
- 1/2 = 0 //余 1
- 4/2 = 2 //余 0
- 2/2 = 1// 余 0
- 1/2 = 0// 余 1
001不足4位补0 = 0010 反过来= 0100
11不足4位补0 = 1100 反过来= 0011
合起来就是 00110100
前面补充2个0
八进制转换十进制
064
八进制就是每逢8进1 八进制数采用0~7来表示一个数
4 * Math.pow(8,0) + 6 * Math.pow(8,1) + 0 * Math.pow(8,2) = 52
八进制转换成二进制
64
八进制数通过除2取余法,得到二进制数,对每个八进制为3个二进制,不足时在最左边补零。
- 6/2 = 3 //余 0
- 3/2 = 1 //余 1
- 1/2 = 0 // 余 1
- 4/2 = 2 //余 0
- 2/2 = 1// 余 0
- 1/2 = 0// 余 1
001 反过来= 100
011 反过来 = 110
合起来就是 00110100
前面补充2个0
十进制转换二进制
52
除以2取余数
- 52 / 2 = 26 // 余 0
- 26 / 2 = 13 // 余 0
- 13 / 2 = 6 // 余 1
- 6 / 2 = 3 // 余 0
- 3 / 2 = 1 // 余 1
- 1 / 2 = 0 // 余 1
001011 反过来 = 110100
结果就是 00110100
前面补充2个0
十进制转换八进制
52
除以16取余数
- 52 / 8 = 6 // 余 4
- 6 / 8 = 0 // 余 6
4 6 反过来= 64
结果就是64
十进制转换十六进制
300
除以16取余数
- 300 / 16 = 18 // 余 12 (表示C)
- 18 /16 = 1 // 余 2
- 1 / 16 = 0 // 余 1
1 2 12 反过来 = 12C
结果就是12C
网友评论