进制转换小题
作业 1 解答:
十六进制 0x3A 转二进制: 十六进制每 1 位对应 4 位二进制,3
→0011
,A
→1010
,故二进制为 00111010
(8 位表示)。
转八进制: 二进制从右往左每 3 位分组(左补 0),00 111 010
→ 对应八进制 7 2
,
作业 2 解答:
补码 11011011
是 8 位负数(最高位为 1)。
求原码:负数补码转原码 → 补码减 1 后取反(符号位保持 1): 补码减 1:
11011011 - 1 = 11011010
, 取反(含符号位):00100101
,但符号位需为 1,故原码为10100101
。十进制真值:原码符号位为 1(负数),数值位
10100101
对应十进制85
,故真值为-37
。
作业 3 解答:
IEEE 754 单精度格式:1 位符号 + 8 位指数(偏移 127) + 23 位尾数。
符号位:
-125.625
为负,符号位S=1
。二进制转换:
125.625 = 1111101.101
,规范化为1.111101101 × 2⁶
,故指数E=6
。偏移指数:
6 + 127 = 133
,二进制为10000101
(8 位)。尾数:规范化后小数部分
111101101
,补零至 23 位:11110110100000000000000
。组合:
1 10000101 11110110100000000000000(
转十六进制为0xC2FB4000
)。
作业 4 解答:
8 位补码计算 -15 + 27
:
-15 的补码:原码
10001111
→ 取反加 1 →11110001
。27 的补码:正数,补码与原码相同 →
00011011
。补码相加:
11110001 +00011011 --------- 100001100 (舍弃进位,取低8位 `00001100`)
结果 00001100为正数,对应十进制12。