Appearance
进位计数制与转换
考情分析
进制转换是数据表示章节的基础,选择题常考十进制与二进制/十六进制的互转,以及快速识别十六进制表示的能力。单独出大题少,更多作为其他题目(补码、浮点数)的铺垫。
进位计数制基础
基本概念
一个 R 进制数可以表示为按权展开的多项式:
其中
常用进制对照
| 十进制 | 二进制 | 八进制 | 十六进制 |
|---|---|---|---|
| 0 | 0000 | 0 | 0 |
| 1 | 0001 | 1 | 1 |
| 2 | 0010 | 2 | 2 |
| 3 | 0011 | 3 | 3 |
| 4 | 0100 | 4 | 4 |
| 5 | 0101 | 5 | 5 |
| 6 | 0110 | 6 | 6 |
| 7 | 0111 | 7 | 7 |
| 8 | 1000 | 10 | 8 |
| 9 | 1001 | 11 | 9 |
| 10 | 1010 | 12 | A |
| 11 | 1011 | 13 | B |
| 12 | 1100 | 14 | C |
| 13 | 1101 | 15 | D |
| 14 | 1110 | 16 | E |
| 15 | 1111 | 17 | F |
转换方法
R 进制 → 十进制:按权展开
将每一位数码乘以对应权值后求和。
例:
例:
十进制 → R 进制
整数部分:除基取余,逆序排列
反复除以 R,每次取余数,直到商为 0,然后从下往上读余数。
例:
43 ÷ 2 = 21 ... 余 1 ↑
21 ÷ 2 = 10 ... 余 1 ↑
10 ÷ 2 = 5 ... 余 0 ↑
5 ÷ 2 = 2 ... 余 1 ↑
2 ÷ 2 = 1 ... 余 0 ↑
1 ÷ 2 = 0 ... 余 1 ↑结果:
小数部分:乘基取整,顺序排列
反复乘以 R,每次取整数部分,直到小数部分为 0 或达到所需精度,从上往下读整数位。
例:
0.625 × 2 = 1.25 → 取 1 ↓
0.25 × 2 = 0.5 → 取 0 ↓
0.5 × 2 = 1.0 → 取 1 ↓结果:
注意
十进制小数不一定能精确转换为二进制小数。例如 0.1 在二进制下是无限循环小数,这是浮点数精度误差的根本原因。
二进制 ↔ 八进制:三位一组
二进制转八进制:从小数点向两侧,每 3 位一组,不足补 0。
二进制 ↔ 十六进制:四位一组
从小数点向两侧,每 4 位一组,不足补 0。
典型例题
例题 1(2019 年 408):
0.8125 × 2 = 1.625 → 1
0.625 × 2 = 1.25 → 1
0.25 × 2 = 0.5 → 0
0.5 × 2 = 1.0 → 1结果
例题 2:将十六进制数
例题 3:将二进制
四位一组:
考点清单
- [ ] 任意 R 进制数按权展开转十进制
- [ ] 十进制整数转二进制(除 2 取余法)
- [ ] 十进制小数转二进制(乘 2 取整法),注意不一定能精确表示
- [ ] 二进制与八进制互转(3 位一组)
- [ ] 二进制与十六进制互转(4 位一组)
- [ ] 十六进制与十进制互转