第二章
2.2 将下列十进制数表示成浮点规格化数, 阶码 3 位,用补码表示; 尾数 9 位,用补码表示。
(1)27/6401000000=0.0110110=0.11011 ×2-1
规格化浮点表示为: [27/64] 原= 101,011011000
[27/64] 反= 110,011011000
[27/64] 补= 111,011011000
(2 )同理: --27/64=-- 0.11011 ×2-1
规格化浮点表示为: [27/64] 原= 101,111011000
[27/64] 反= 110, 100100111
[27/64] 补= 111, 100101000
2.8 已知 x 和 y ,用变形补码计算 x±y ,并对结果进行讨论。
1)[x] 补 =00.1101 [y] 补 =11.0010
[x+y]补= [x] 补+[y] 补 =11.1111 无溢出
x+y= -0.0001
[x] 补 =00.1101 [--y] 补 =00.1110
[x -y] 补= [x] 补 +[--y]补 =01.1011 正向溢出
2 )[x] 补 =11.0101 [y] 补 =00.1111
[x+y]补= [x] 补+[y] 补 =00.0100 无溢出
x+y= 0.0100
[x] 补 =11.0101 [--y] 补 =11.0001
[x -y] 补= [x] 补 +[--y]补 =10.0110 负向溢出
3) [x] 补 =11.0001 [y] 补 =11.0100
[x+y] 补= [x] 补+[y] 补 =10.0101 负向溢出
[x] 补 =11.0001 [--y] 补 =00.1100
[x -y] 补= [x] 补 +[--y]补 =11.1101 无溢出
X-y= -0.0011
2.9 用原码一位乘法和补码一位乘法计算 x*y 。
1)原码一位乘法 |x|=00.1111 |y|=0.1110
部分积 乘数 yn
00.0000 0.1110
+00.0000
00.0000
00.00000 0.111
+00.1111
00.11110
00.011110 0.11
+00.1111
01.011010
00.1011010 0.1
+00.1111
01.1010010
00
Pf=xf ⊕yf=1 |p|=|x| ×|y|=0
所以 [x ×y]原 =1
补码一位乘法 [x]补 =11.0001 [y]补 =0.1110 [--x] 补 =11.0001
部分积 yn yn+1
00.0000 0.11100
00.00000 0.1110
+00.1111
00.11110
00.011110 0.111
00.0011110 0.11
00 0.1
+11.0001
11
[x ×y] 补 =11
2 )原码一位乘法 |x|=00.110 |y|=0.010
部分积 乘数 yn
00.000