1、N进制转十进制
public class Demo1 {
public static void main(String[] args) {
//二进制转十进制
System.out.println(0b1011);//11
//八进制转十进制
System.out.println(0234);//156
//十六进制转十进制
System.out.println(0x23A);//570
}
}
规则:从最低位(右边)开始,将每个数提取出来,乘于N的(位数-1)次方,然后求和
二进制(0b1011)转十进制:
八进制(0234)转十进制:
十六进制(0x23A)转十进制:
2、十进制转N进制
规则:将该数不断除于N,直到商为0为止,然后将每步得到的余数倒过来,就是对应的N进制
十进制(34)转二进制:
34÷2=17......0
17÷2= 8......1
8 ÷2= 4......0
4 ÷2= 2......0
2 ÷2= 1......0
1 ÷2= 0......1
十进制 34 = 二进制0b100010
十进制(34)转八进制:
34÷8=4......2
4 ÷8=0......4
十进制 34 =八进制042
十进制(34)转十六进制:
34÷16=2......2
2 ÷16=0......2
十进制 34 =十六进制0x22
3、前缀区分:
0x:十六进制(零)
0:八进制(零)
0b:二进制(零)
十进制 | 十六进制 | 八进制 | 二进制 |
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 2 | 2 | 10 |
3 | 3 | 3 | 11 |
4 | 4 | 4 | 100 |
5 | 5 | 5 | 101 |
6 | 6 | 6 | 110 |
7 | 7 | 7 | 111 |
8 | 8 | 10 | 1000 |
9 | 9 | 11 | 1001 |
10 | A | 12 | 1010 |
11 | B | 13 | 1011 |
12 | C | 14 | 1100 |
13 | D | 15 | 1101 |
14 | E | 16 | 1110 |
15 | F | 17 | 1111 |
16 | 10 | 20 | 10000 |
17 | 11 | 21 | 10001 |