DAY 1 巩固练习
模块一:$0 \sim 15$ 四大进制对照表
| 十进制 (D) | 二进制 (B) | 八进制 (O/Q) | 十六进制 (H) | 十进制 (D) | 二进制 (B) | 八进制 (O/Q) | 十六进制 (H) |
|---|---|---|---|---|---|---|---|
| 0 | 0000 |
0 | 0 | 8 | 1000 |
10 | 8 |
| 1 | 0001 |
1 | 1 | 9 | 1001 |
11 | 9 |
| 2 | 0010 |
2 | 2 | 10 | 1010 |
12 | A |
| 3 | 0011 |
3 | 3 | 11 | 1011 |
13 | B |
| 4 | 0100 |
4 | 4 | 12 | 1100 |
14 | C |
| 5 | 0101 |
5 | 5 | 13 | 1101 |
15 | D |
| 6 | 0110 |
6 | 6 | 14 | 1110 |
16 | E |
| 7 | 0111 |
7 | 7 | 15 | 1111 |
17 | F |
模块二:$2$ 的常用幂次方速查表
1. 负幂次方(小数位权速查)
| 幂次 $2^{-n}$ | $2^{-1}$ | $2^{-2}$ | $2^{-3}$ | $2^{-4}$ |
|---|---|---|---|---|
| 十进制值 | $0.5$ | $0.25$ | $0.125$ | $0.0625$ |
2. 正幂次方与容量基准 ($2^0 \sim 2^{40}$)
| 幂次 | 数值 | 幂次 | 数值 | 幂次 | 数值 / 对应容量 | 关键大数值与寻址 |
|---|---|---|---|---|---|---|
| $2^0$ | 1 | $2^6$ | 64 | $2^{10}$ | 1,024 ($1\text{ KB}$) | $2^{20} = 1,048,576$ ($1\text{ MB}$) |
| $2^1$ | 2 | $2^7$ | 128 | $2^{11}$ | 2,048 ($2\text{ KB}$) | $2^{30} = 1,073,741,824$ ($1\text{ GB}$) |
| $2^2$ | 4 | $2^8$ | 256 | $2^{12}$ | 4,096 ($4\text{ KB}$) | $2^{31} = 2,147,483,648$ (32位有符号极值) |
| $2^3$ | 8 | $2^9$ | 512 | $2^{15}$ | 32,768 ($32\text{ KB}$) | $2^{32} = 4,294,967,296$ ($4\text{ GB}$ 寻址上限) |
| $2^4$ | 16 | $2^{10}$ | 1024 | $2^{16}$ | 65,536 ($64\text{ KB}$) | $2^{40} = 1,099,511,627,776$ ($1\text{ TB}$) |
| $2^5$ | 32 | — | — | — | — | — |
模块三:转换与机器数规则图解
【方法 1:任意进制 ───> 十进制(按权展开法)】
二进制 ──> 十进制:110.01B = 1×2² + 1×2¹ + 0×2⁰ + 0×2⁻¹ + 1×2⁻² = 4 + 2 + 0 + 0 + 0.25 = 6.25
八进制 ──> 十进制:110Q = 1×8² + 1×8¹ + 0×8⁰ = 64 + 8 + 0 = 72
十六进制 ──> 十进制:110H = 1×16² + 1×16¹ + 0×16⁰ = 256 + 16 + 0 = 272
【方法 2:十进制 ───> 任意进制(整数除基取余 / 小数乘基取整)】
[整数短除法:除基取余,逆序排列] [小数乘基法:乘基取整,顺序排列]
十进制 30 ──> 二进制 (11110) 十进制 0.625 ──> 二进制 (0.101)
2 |_30__ ... 0 (低位) 0.625 × 2 = 1.25 ──> 取整 1 (高位)
2 |_15__ ... 1 ↑ 0.25 × 2 = 0.50 ──> 取整 0 ↓
2 |__7__ ... 1 │ 从下往上 0.50 × 2 = 1.00 ──> 取整 1 (低位)
2 |__3__ ... 1 │ 逆序读数 读数结果:(0.101)₂
2 |__1__ ... 1 │
0 ... 1 (高位)
【方法 3:二进制 <───> 八进制 / 十六进制(快速分组与拆分)】
二进制 ──> 八进制(3位一组):100.010₂ ──> (4.2)₈ | 八进制 ──> 二进制(1位拆3位):(321)₈ ──> 011 010 001₂
二进制 ──> 十六进制(4位一组):0100.0100₂ ──> (4.4)₁₆ | 十六进制 ──> 二进制(1位拆4位):(321)₁₆ ──> 0011 0010 0001₂
【原码、反码、补码转换流向与数值范围】
[正数]:原码 = 反码 = 补码(最高位符号位为 0)
[负数]:原码 ───────────────> 反码 ───────────────> 补码 ───────────────> 原码
(最高位为1) 数值位按位取反 末位加 1 数值位取反加 1 (或减1取反)
范围公式 (n 位带符号数补码):-2^(n-1) ~ 2^(n-1)-1 (8位: -128 ~ +127 ; 32位: -2^31 ~ 2^31-1)
一、 单项选择题(本大题共 30 小题,每题 2 分,共 60 分)
1. 将二进制数 $(1101.011)_2$ 转换为十进制数,结果是( )
A. 13.375 B. 13.625 C. 11.375 D. 13.75
2. 将八进制小数 $(63.5)_8$ 转换为二进制数,结果是( )
A. $(110011.1)_2$ B. $(110011.101)_2$ C. $(110010.101)_2$ D. $(111011.101)_2$
3. 将十六进制数 $(3C.A)_{16}$ 转换为二进制数,结果是( )
A. $(111100.101)_2$ B. $(00111100.11)_2$ C. $(111010.101)_2$ D. $(111100.0101)_2$
4. 将十进制数 $(175.75)_{10}$ 转换为十六进制数,结果是( )
A. $(AF.C)_{16}$ B. $(BF.C)_{16}$ C. $(AE.8)_{16}$ D. $(AF.3)_{16}$
5. 将纯小数 $(0.8125)_{10}$ 转换为二进制数,结果是( )
A. $(0.1111)_2$ B. $(0.1101)_2$ C. $(0.1011)_2$ D. $(0.1110)_2$
6. 二进制算式 $(10110)_2 - (01101)_2$ 的计算结果为( )
A. $(01001)_2$ B. $(01011)_2$ C. $(00111)_2$ D. $(01101)_2$
7. 一个容量为 $64\text{ GB}$ 的移动硬盘,理论上最多可以划分出多少个大小为 $128\text{ MB}$ 的存储分区?( )
A. 256 B. 512 C. 1024 D. 2048
8. 某文件大小为 $2.5\text{ MB}$,它等于多少个字节(Byte)?( )
A. $2500000\text{ B}$ B. $2560000\text{ B}$ C. $2621440\text{ B}$ D. $20971520\text{ B}$
9. 在计算机系统中,带符号整数通常采用“补码”进行加减运算,其核心优势是( )
A. 提高数据运算精度 B. 符号位与数值位能一同参与运算,简化硬件设计 C. 扩大正数的表示范围 D. 避免出现溢出
10. 已知某 8 位带符号整数的补码为 $[X]_{\text{补}} = 10110100_B$,则其原码 $[X]_{\text{原}}$ 为( )
A. $11001100_B$ B. $11001011_B$ C. $10110011_B$ D. $11001101_B$
11. 采用 8 位二进制补码表示有符号整数时,其能表示的十进制范围是( )
A. $-127 \sim +127$ B. $-128 \sim +127$ C. $-128 \sim +128$ D. $0 \sim 255$
12. 32 位带符号整型(int)变量在内存中以补码存储,其表示的数值范围是( )
A. $-2^{31} \sim 2^{31}-1$ B. $-2^{32} \sim 2^{32}-1$ C. $-2^{31}-1 \sim 2^{31}$ D. $0 \sim 2^{32}-1$
13. 已知大写字母 'A' 的十六进制 ASCII 码为 $(41)_{16}$,则小写字母 'f' 的十六进制 ASCII 码为( )
A. $(61)_{16}$ B. $(65)_{16}$ C. $(66)_{16}$ D. $(67)_{16}$
14. 下列不同进制表示的数中,数值最大的是( )
A. $(110101)_2$ B. $(67)_8$ C. $(36)_{16}$ D. $(53)_{10}$
15. 在 ASCII 编码中,大写英文字母与对应的小写英文字母在二进制表示上只有 1 位不同,该位是( )
A. 最高位(第7位) B. 第5位(权重 $2^5=32$) C. 最低位(第0位) D. 第1位(权重 $2^1=2$)
16. 将二进制整数 $(101101)_2$ 转换为十进制数,结果是( )
A. 43 B. 45 C. 47 D. 53
17. 将十进制数 $(100)_{10}$ 转换为八进制数,结果是( )
A. $(142)_8$ B. $(144)_8$ C. $(152)_8$ D. $(124)_8$
18. 将八进制数 $(34.2)_8$ 转换为十进制数,结果是( )
A. $28.25$ B. $28.5$ C. $26.25$ D. $28.125$
19. 将十六进制数 $(2B.4)_{16}$ 转换为二进制数,结果是( )
A. $(00101011.01)_2$ B. $(00101011.0100)_2$ C. $(00101010.0100)_2$ D. $(00101111.0100)_2$
20. 二进制算式 $(1101)_{2} + (1011)_{2}$ 的计算结果为( )
A. $(11000)_2$ B. $(10110)_2$ C. $(11100)_2$ D. $(10010)_2$
21. 下列容量换算中,正确的是( )
A. $1\text{ KB} = 1000\text{ Bytes}$ B. $1\text{ MB} = 1024\text{ KB}$ C. $1\text{ GB} = 1000\text{ MB}$ D. $1\text{ TB} = 1024\text{ KB}$
22. 若某机采用 8 位补码表示法,已知 $[X]_{\text{补}} = 01100100_B$,则其真值 $X$ 的十进制表示为( )
A. $100$ B. $-100$ C. $50$ D. $-50$
23. 已知某数的原码为 $11001000_B$,则其对应的补码为( )
A. $10111000_B$ B. $10111001_B$ C. $11111000_B$ D. $10110111_B$
24. 字符 '0' 的 ASCII 码值(十进制)是 $48$,则字符 '7' 的十六进制 ASCII 码为( )
A. $(37)_{16}$ B. $(35)_{16}$ C. $(47)_{16}$ D. $(73)_{16}$
25. 将八进制数 $(57)_8$ 转换为十六进制数,结果是( )
A. $(2F)_{16}$ B. $(3F)_{16}$ C. $(2E)_{16}$ D. $(3D)_{16}$
26. 下列关于原码、反码、补码的叙述中,不正确的是( )
A. 正数的原码、反码、补码完全相同 B. 负数的补码是在反码的末位加1得到的 C. 零的原码在 8 位机中只有一种表示形式 D. 补码表示法的符号位参与算术加减运算
27. 某 16 位无符号整数所能表示的最大十进制数是( )
A. $32767$ B. $32768$ C. $65535$ D. $65536$
28. 将十六进制数 $(A5)_16$ 转换为十进制数,结果是( )
A. $160$ B. $165$ C. $175$ D. $185$
29. 字母 'K' 的大写 ASCII 码为 $75$,则其对应的小写字母 'k' 的十进制 ASCII 码是( )
A. $105$ B. $107$ C. $109$ D. $111$
30. 十进制数 $-64$ 的 8 位二进制补码形式是( )
A. $11000000_B$ B. $10111111_B$ C. $10100000_B$ D. $11000001_B$
二、 填空题(本大题共 16 小题,每空 2 分,共 32 分)
1. 将十进制数 $(217.375)_{10}$ 转换为八进制数是 $\underline{\hspace{5em}}$。
2. 将十六进制数 $(5E.C)_{16}$ 转换为八进制数是 $\underline{\hspace{5em}}$。
3. 进行二进制小数加法运算:$(1010.11)_2 + (0110.10)_2 =$ $\underline{\hspace{5em}}$。
4. 存储容量单位换算:$2\text{ TB} = \underline{\hspace{4em}}\text{ MB} = \underline{\hspace{4em}}\text{ Bytes}$(后一空用 $2^n$ 的幂形式表示)。
5. 十进制负数 $-45$ 转换为 8 位二进制表示时: * 其原码 $[X]_{\text{原}} =$ $\underline{\hspace{4em}}$; * 其补码 $[X]_{\text{补}} =$ $\underline{\hspace{4em}}$。
6. 已知某计算机内存中存储的一个 8 位补码为 $11101011_B$,则它代表的十进制真值是 $\underline{\hspace{4em}}$。
7. 16 位二进制补码能够表示的有符号整数范围是 $\underline{\hspace{4em}} \sim \underline{\hspace{4em}}$(填具体十进制数值)。
8. 字符 'a' 的十进制 ASCII 码是 $97$,则其对应的 8 位二进制编码为 $\underline{\hspace{5em}}$。
9. 将二进制整数 $(110101)_2$ 转换为八进制数是 $\underline{\hspace{4em}}$。
10. 将十进制数 $(255)_{10}$ 转换为十六进制数是 $\underline{\hspace{4em}}$。
11. 八进制数 $(127)_8$ 对应的十进制数是 $\underline{\hspace{4em}}$。
12. 二进制算式 $(10110)_2 \times (10)_2$ 的计算结果(二进制)是 $\underline{\hspace{4em}}$。
13. 若 8 位无符号二进制整数为 $(10101100)_2$,其对应的十进制数值是 $\underline{\hspace{4em}}$。
14. 已知字符 'P' 的 ASCII 码为 $80$,则字符 'S' 的 ASCII 码值(十进制)是 $\underline{\hspace{4em}}$。
15. 8 位带符号二进制原码能表示的绝对值最小的负数是 $\underline{\hspace{4em}}$(填二进制形式)。
16. $4\text{ GB}$ 内存空间等于 $\underline{\hspace{4em}}\text{ KB}$。
三、 综合计算与分析题(本大题共 4 题,共 8 分)
1.(2分)进制规范转换题
请写出十进制数 $(203.625)_{10}$ 对应的二进制数。
2.(2分)二进制竖式减法运算
计算二进制减法:$(11011.1)_2 - (1010.01)_2 =$ $\underline{\hspace{5em}}$。
3.(2分)补码与原码还原分析
已知某 8 位微型计算机中,有符号整数的补码为 $[X]_{\text{补}} = 10101100_B$,求其十进制真值。
4.(2分)ASCII 码与综合存储应用题
已知字符串 "Comp" 由 4 个 ASCII 字符组成,该字符串存储在内存中总共占用多少个 Byte?
答案与详细解析
一、 单项选择题(每题 2 分,共 60 分)
| 题号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 答案 | A | B | A | A | B | A | B | C | B | A | B | A | C | B | B |
| 题号 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 答案 | B | A | A | B | A | B | A | B | A | B | C | C | B | B | A |
新增单选题部分解析:
* 16. B:$101101_2 = 32 + 8 + 4 + 1 = 45$。
* 17. A:$100 \div 8 = 12 \dots 4$;$12 \div 8 = 1 \dots 4$;$1 \div 8 = 0 \dots 1 \to (142)_8$。
* 18. A:$3\times 8 + 4 + 2\times 8^{-1} = 24 + 4 + 0.25 = 28.25$。
* 19. B:$2 \to 0010$,$B(11) \to 1011$,$.4 \to .0100$。组合得 $(00101011.0100)_2$。
* 20. A:$1101_2 + 1011_2 = 13 + 11 = 24_{10} = (11000)_2$。
* 21. B:$1\text{ MB} = 1024\text{ KB}$。
* 22. A:正数的补码等于真值本身,符号位为 0,数值位 $1100100_2 = 64+32+4 = 100$。
* 23. B:原码 $11001000_B$,符号位保持 1,数值位取反加1:$1001000 \to 0110111 + 1 = 01101000_B$。
* 24. A:'0' 是 $48$,$'+7'$ 是 $55$。$55 = 3\times 16 + 7 = (37)_{16}$。
* 25. B:$(57)_8 = 101\ 111_2 = 0011\ 1111_2 = (3F)_{16}$。
* 26. C:8 位机中,零的原码有两种($+0$ 为 $00000000$,$$-0$ 为 $10000000$)。
* 27. C:16 位无符号数范围为 $0 \sim 2^{16}-1$,最大值为 $65535$。
* 28. B:$(A5)_{16} = 10 \times 16 + 5 = 165$。
* 29. B:大小写相差 $32$,故小写 'k' 的 ASCII 值为 $75 + 32 = 107$。
* 30. A:$-64$ 的补码:$64 = 01000000_2$,取反加1得 $11000000_2$。
二、 填空题(每空 2 分,共 32 分)
- $(331.3)_8$
- $(136.6)_8$
- $(10001.01)_2$
- $2097152$ ; $2^{41}$
- $10101101_2$ ; $11010011_2$
- $-21$
- $-32768$ ; $+32767$
- $01100001_2$
- $(65)_8$ (解析:$110\ 101_2 = 65_8$)
- $(FF)_{16}$ (解析:$255 = FF_{16}$)
- $(87)_{10}$ (解析:$1\times 64 + 2\times 8 + 7 = 87$)
- $(101100)_2$ (解析:相当于乘以2,左移一位)
- $(172)_{10}$ (解析:$128 + 32 + 8 + 4 = 172$)
- $83$ (解析:'P'=80,'S' 比 'P' 多 3,故 $80+3=83$)
- $10000001_2$ (解析:真值最小的负数即绝对值最小的负数,即 $-1$ 的原码)
- $4194304$ (解析:$4 \times 1024 \times 1024 = 4194304\text{ KB}$)
三、 综合计算与分析题(每题 2 分,共 8 分)
- 答案: $(11001011.101)_2$
- 答案: $(10001.01)_2$
- 答案: $-84$
- 解析: 补码 $10101100_B$,原码为 $11010100_B$,数值部分 $010100_2 = 84$,带符号得 $-84$。
- 答案: $4\text{ Bytes}$
—— 本文来自火龙信奥(义乌睿码科技):义乌青少年信息学奥赛与编程教育平台,专注 CSP-J/S、NOIP、GESP 竞赛培训,线上线下融合教学,助力编程升学。网址:hlcoding.com