进制转换

十进制、二进制、八进制、十六进制

十进制:由0·9组成,不能以0开头;
二进制:由0和1组成;
八进制:由0~7组成,为了区分与其他进制的数字区别,开头都是以0开始;
十六进制:由0~9和A~F组成,为了区分于其他数字的区别,开头都是以0x开始。

十进制转换示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
基数=756  
#二进制
756 ÷ 2 = 378 ... 0
378 ÷ 2 = 189 ... 0
189 ÷ 2 = 94 ... 1
94 ÷ 2 = 47 ... 0
47 ÷ 2 = 23 ... 1
23 ÷ 2 = 11 ... 1
11 ÷ 2 = 5 ... 1
5 ÷ 2 = 2 ... 1
2 ÷ 2 = 1 ... 0
1 ÷ 2 = 0 ... 1
结果:从下往上读取余数 = 1011110100

#八进制
756 ÷ 8 = 94 ... 4
94 ÷ 8 = 11 ... 6
11 ÷ 8 = 1 ... 3
1 ÷ 8 = 0 ... 1
结果:从下往上读取余数 = 1364

#十六进制
756 ÷ 16 = 47 ... 4
47 ÷ 16 = 2 ... 15(对应十六进制的 F)
2 ÷ 16 = 0 ... 2
结果:从下往上读取余数 = 2F4
二进制转换示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
基数:1011110100  
#十进制
1×2⁹ + 0×2⁸ + 1×2⁷ + 1×2⁶ + 1×2⁵ + 1×2⁴ + 0×2³ + 1×2² + 0×2¹ + 0×2⁰
1×512 + 0×256 + 1×128 + 1×64 + 1×32 + 1×16 + 0×8 + 1×4 + 0×2 + 0×1
= 512 + 128 + 64 + 32 + 16 + 4
= 756

#八进制
二进制:1 0 1 1 1 1 0 1 0 0
分组后(从右向左): 001 011 110 100
↓ ↓ ↓ ↓
1 3 6 4

#十六进制
二进制:1 0 1 1 1 1 0 1 0 0
分组后(从右向左): 0010 1111 0100
↓ ↓ ↓
2 F 4
八进制转换示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
基数:1364  
#十进制
1×8³ + 3×8² + 6×8¹ + 4×8⁰
= 512 + 192 + 48 + 4
= 756

#二进制
1 → 001
3 → 011
6 → 110
4 → 100
拼接(由上向下):001 011 110 100 = 1011110100

#十六进制(两种方式)
##八进制 → 二进制 → 十六进制(推荐)
##八进制 → 十进制 → 十六进制
→ 八进制:1364
→ 二进制:001 011 110 100 = 1011110100
→ 二进制分组:0010 1111 0100
→ 十六进制:2 F 4
十六进制转换示例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
基数:2F4  
#十进制
2×16² + 15×16¹ + 4×16⁰
= 2×256 + 15×16 + 4×1
= 512 + 240 + 4
= 756

#二进制
2 → 0010
F → 1111
4 → 0100
拼接(由上向下):0010 1111 0100 = 1011110100

#八进制
##十六进制 → 二进制 → 八进制
##十六进制 → 十进制 → 八进制
→ 十六进制:2F4
→ 二进制:0010 1111 0100
→ 二进制分组(3位一组):001 011 110 100
→ 八进制:1 3 6 4

进制转换
https://76-s.github.io/2026/02/09/进制转换/
作者
76
发布于
2026年2月9日
许可协议