计算机组成原理 第五版 习题答案
4.在 IEEE754 标准中,一个规格化的 32 位浮点数 x 的真值表示为:
X =
(?1)s
×(1.M)× 2E ?127
(1)27/64=0.011011=1.1011×
2?2
E= -2+127 = 125= 0111 1101 S= 0 M= 1011 0000 0000 0000 0000 000
最后表示为:0 01111101 10110000000000000000000 (2)-27/64=-0.011011=1.1011× 2?2
E= -2+127 = 125= 0111 1101 S= 1 M= 1011 0000 0000 0000 0000 000
最后表示为:1 01111101 10110000000000000000000 5.(1)用变形补码进行计算: [x]补
=00 11011 [y]补=00 00011
[x]补 = 00 11011 [y]补 = + 00 00011
[x+y]补=
00 11110
结果没有溢出,x+y=11110
(2) [x]补=00 11011 [y]补=11 01011 [x]补 = 00 11011 [y]补 = + 11 01011 [x+y]补= 00 00110 结果没有溢出,x+y=00110 (3)[x]补=11 01010 [y]补=11 111111 [x]补 = 00 01010 [y]补 = + 00 11111 [x+y]补= 11 01001
结果没有溢出,x+y=?10111
6.[x-y]补=[x]补+[-y]补
(1)[x]补=00 11011 [-y]补=00 11111
[x]补 = 00 11011 [-y]补 = + 00 11111 [x-y]补= 01 11010 结果有正溢出,x?y=11010
(2)[x]补=00 10111 [-y]补=11 00101
[x]补 = 00 10111 [-y]补 = + 11 00101 [x-y]补= 11 11100
结果没有溢出,x?y=?00100
5
计算机组成原理 第五版 习题答案
(3)[x]补=00 11011
[-y]补=00 10011
[x]补 = 00 11011 [-y]补 = + 00 10011 [x-y]补= 01 01110
结果有正溢出,x?y=10010
7.(1) 用原码阵列乘法器:
[x]原=0 11011 [y]原=1 11111
因符号位单独考虑,|x|=11011 |y|=11111
1 1 0 1 1 ×) 1 1 1 1 1
——————————————————————————
1 1 0 1 1
1 1 0
1 1
1 1 0
1 1
1 1 0
1 1
1 1 0
1 1
1 1 0 1
0 0 0
1
0 1
[x×y]原=1 1101000101 用补码阵列乘法器:
[x]补=0 11011 [y]补=1 00001 乘积符号位为:1
|x|=11011 |y|=11111
1 1 0 1 1 ×) 1
1 1 1 1
——————————————————————————
1 1 0 1 1
1 1 0
1 1
1 1 0
1 1
1 1 0 1 1
6
计算机组成原理 第五版 习题答案
1 1 0
1 1
1 1 0 1 0 0 0
1
0 1
[x×y]补=1 0010111011
(2) 用原码阵列乘法器:
[x]原=1 11111 [y]原=1 11011
因符号位单独考虑,|x|=11111 |y|=11011
1 1 1 1 1 ×) 1 1 0 1 1
——————————————————————————
1 1 1 1 1
1 1
1
1
1
0 0 0 0 0
1 1
1
1 1
1 1 1 1
1
1 1 0
1
0 0
0
1
0 1
[x×y]原=0 1101000101 用补码阵列乘法器:
[x]补=1 00001 [y]补=1 00101 乘积符号位为:1
|x|=11111 |y|=11011
1 1 1 1 1 ×) 1
1 0 1 1
——————————————————————————
1 1 1 1 1
1 1 1
1 1
0 0 0
0 0
1 1 1 1 1
7
计算机组成原理 第五版 习题答案
1 1 1 1
1
1 1 0 1
0 0 0
1
0 1
[x×y]补=0 1101000101
.(1) [x]原=[x]补=0 11000
[-∣y∣]补=1 00001
被除数 X 0 11000 +[-|y|]补 1 00001
----------------------------------------------------
余数为负 1 11001 →q0=0
左移 1 10010 +[|y|]补 0 11111 ---------------------------------------------------- 余数为正 0 10001 →q1=1
左移 1 00010 +[-|y|]补 1 00001 ----------------------------------------------------
余数为正 0 00011 →q2=1
左移 0 00110 +[-|y|]补 1 00001 ----------------------------------------------------
余数为负 1 00111 →q3=0
左移 0 01110 +[|y|]补 0 11111 ---------------------------------------------------- 余数为负 1 01101 →q4=0
左移 0 11010 +[|y|]补 0 11111 ---------------------------------------------------- 余数为负 1 11001 →q5=0 +[|y|]补 0 11111 ----------------------------------------------------
余数 0 11000
故 [x÷y]原=1.11000 即 x÷y= ?0.11000 余数为 0 11000
(2)
[∣x∣]补=0 01011 [-∣y∣]补=1 00111
被除数 X 0 01011 +[-|y|]补 1 00111
----------------------------------------------------
余数为负 1 10010 →q0=0
8
8
计算机组成原理 第五版 习题答案
左移 1 00100 +[|y|]补 0 11001
---------------------------------------------------- 余数为负 1 11101 →q1=0
左移 1 11010 +[|y|]补 0 11001 ---------------------------------------------------- 余数为正 0 10011 →q2=1
左移 1 00110 +[-|y|]补 1 00111 ----------------------------------------------------
余数为正 0 01101 →q3=1
左移 0 11010 +[-|y|]补 1 00111 ----------------------------------------------------
余数为正 0 00001 →q4=1
左移 0 00010 +[-|y|]补 1 00111 ----------------------------------------------------
余数为负 1 01001 →q5=0 +[|y|]补 0 11001 ----------------------------------------------------
余数 0 00010
x÷y= ?0.01110 余数为 0 00010
9.(1) x = 2-011*0.100101, y = 2-010*(-0.011110)
[x]浮 = 11101,0.100101 [y]浮 = 11110,-0.011110 Ex-Ey = 11101+00010=11111 [x]浮 = 11110,0.010010(1) x+y 0 0. 0 1 0 0 1 0 (1) + 1 1. 1 0 0 0 1 0 1 1. 1 1 0 1 0 0 (1) 规格化处理: 1.010010 阶码 11100 x+y= 1.010010*2-4 = 2-4*-0.101110 x-y 0 0. 0 1 0 0 1 0 (1)
+ 0 0. 0 1 1 1 1 0
0 0 1 1 0 0 0 0 (1)
规格化处理: 0.110000 阶码
11110 x-y=2-2*0.110001
(2) x = 2-101*(-0.010110), y = 2-100*0.010110 [x]浮
= 11011,-0.010110 [y]浮= 11100,0.010110
9