第 14 题
已知用 IEEE 754 单精度浮点数表示浮点型变量,采用就近舍入(中间值取偶数)。若浮点型变量x为12.1,则x的机器数是( )
A. 4141 9999H
B. 4141 999AH
C. 41E0 CCCCH
D. 41E0 CCCDH
[tag_link]
正确答案:B
**【解析】****1. 确定数量级(指数部分)**12.110∈[8,16)⇒12.1=1.5125×23- 符号位:0
- 指数:(3 + 127 = 130 = 1000,0010_2)2. 计算尾数把 1.5125 转成二进制小数:1.5125=1+0.5125对小数部分反复乘 2:
| 步骤 | 值 |
|---|---|
| 0.5125 × 2 = 1.025 | 1 |
| 0.025 × 2 = 0.05 | 0 |
| 0.05 × 2 = 0.1 | 0 |
| 0.1 × 2 = 0.2 | 0 |
| 0.2 × 2 = 0.4 | 0 |
| 0.4 × 2 = 0.8 | 0 |
| 0.8 × 2 = 1.6 | 1 |
| 0.6 × 2 = 1.2 | 1 |
| … | … |
得到二进制近似:
1.10000001100110011001100…₂
**3. 就近舍入(中间值取偶)**IEEE 754 单精度尾数 23 位,截断时:
…10011001100110011001100 1100…
- 被舍弃部分 > 0.5 ULP
- 或者正好在中间且最低位为奇数👉 需要进 1因此尾数末位变为
…100110104. 拼装 IEEE 754 单精度
| 部分 | 内容 |
|---|---|
| 符号 | 0 |
| 指数 | 10000010 |
| 尾数 | 10000011001100110011010 |
转换为十六进制:
0 | 10000010 | 10000011001100110011010
↓
4141999A₁₆
最终答案****B 4141 999AH