计算机组成原理习题答案第五章
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)0.1100100
(2)1.0011001
(3)1.1100110
(4)1.0000111
解:(1)[X]补=0.1100100
1/4X补=0.0011001,[4X]补=0.0010000
2)[X]补=1.0011001
1/4X补=1.1100110,[4X]补=1.1100100
(3)1.1100110
解:
C1=G1+PC0
C2=G2+P2G1+P2P1C0
C3=G3+P3G2+P3P2G1+P3P2P1C0
设பைடு நூலகம்G倡
1=G3+P3G2+P3P2G1,P倡
1=P3P2P1
则有:
C3=G倡
1+P倡
1C0
C6=G倡
2+P倡
2G倡
1+P倡
2P倡
1C0
C9=G倡
3+P倡
3G倡
2+P倡
3P倡
2G倡
1+P倡
3P倡
0.11011
补码除法:X÷Y=0.11011-0.11001×2-5
0.11011
12.设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列
各题:
(1)X=2101×(-0.100010),Y=2100×(-0.111110)
(2)X=2-101×0.101100,Y=2-100×(-0.101000)
将3部分校正函数统一考虑并化简,得:
1/4X补=1.1111001,[4X]补=1.0011000
(4)1.0000111
1/4X补=1.1100001,[4X]补=1.0011100
5.证明在全加器里,进位传递函数P=A i+Bi=Ai⊕Bi。
解:并行加法器中的每一个全加器都有一个从低位送来的进位和一个传送给较高位
的进位。进位表达式为
=2-2{[Z]补+(Y i+1+Y i-2Y i-1)[X]补}
[Z′′′]补=2-1{[Z′′]补+(Y i-1-Y i-2)[X]补}
=2-1{2-2{[Z]补+(Y i+1+Y i-2Y i-1)[X]补}+(Y i-1-Y i-2)[X]补}
01=2-3{[Z]补+(Y i+1+Y i-2Y i-1)×[X]补+22×(Y i-1-Y i-2)[X]补}
11.01010[X]补
+11.11111[Y]补
11.01001[X+Y]补
X+Y=-0.10111
(4)[X]补=1.00101,[Y]补=0.11110
11.00101[X]补
+00.11110[Y]补
00.00011[X+Y]补
X+Y=0.00011
2.已知X和Y,试用它们的变形补码计算出X-Y,并指出结果是否溢出。
(3)X=2-011×0.101100,Y=2-001×(-0.111100)
注:此题中阶码用二进制表示。
求:X+Y,X-Y。
解:(1)X=2101×(-0.100010),Y=2100×(-0.111110)
[X]浮=0101;1.011110
[Y]浮=0100;1.000010
对阶:小阶向大阶看齐,ΔE=EA-EB=1,
(1)X=0.11011,Y=-0.11111
(2)X=0.10111,Y=0.11011
(3)X=0.11011,Y=-0.10011
(4)X=-0.10110,Y=-0.00001
解:(1)[X]补=0.11011,[Y]补=1.00001,[-Y]补=0.11111
00.11011[X]补
+00.11111[-Y]补
相减:00.001011
+00 .111100
01.000111
需右规一次,[X-Y]浮=0000;0.100011
所以X-Y=2-000×0.100011
13.设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列
各题:
(1)X=23×13/16,Y=24×-9/16
求:X×Y。
(2)X=23×-13/16,Y=25×15/16
④
15
16
17
18
1911000
11001
11010
11011
1110010101
10110
10111
11000
11001
若A≥5,B≥5,
则+3校正
①和在0~4范围内,不用校正,结果正确。
②和在6~9范围内,当A<5,B<5,需+3校正,而当A<5,B≥5或A≥5,B<5
时,不需校正。故校正函数为:
0.11011
补码除法:X÷Y=-0.11001+0.00011×2-50.11011
(3)中间过程略。原码除法:X÷Y=-0.11000+0.10000×2-5
0.10110
补码除法:X÷Y=-0.11001+0.00101×2-5
0.10110
(4)中间过程略。原码除法:X÷Y=0.11010+0.00010×2-5
相加:00.010110
+11 .011000
11.101110
需左规一次,[X+Y]浮=1011;1.011100
所以X+Y=2-101×(-0.100100)
相减:00.010110
+00.101000
00.111110
所以X-Y=2-100×0.111110
(3)X=2-011×0.101100,Y=2-001×(-0.111100)
不校正
②
5
6
7
8
901000
01001
01010
01011
0110000101
00110
00111
01000
01001
若A<5,B<5,
则+3校正
③
10
11
12
13
1410000
10001
10010
10011
1010001101
01110
01111
10000
10101
若A或B≥5,B或A<5,
则+3校正
[X]浮=__________1101;0.101100
[Y]浮=1111;1.000100
对阶:小阶向大阶看齐。ΔE=EA-EB=-2
[X]浮′=1111;0.001011
对阶之后,尾数相加和相减。
相加:00.001011
+11 .000100
11.001111
所以X+Y=2-001×(-0.110001)
求:X÷Y。
解:(1)X=23×13/16,Y=24×-9
阶码相加:EA+EB=3+4=7
尾数相乘:由补码乘法规则求得:-0.01110101
结果规格化:左规一次,X×Y=-0.11101010×26
(2)X=23×-13/16,Y=25×15/16
尾数调整:因为|X尾数|≤|Y尾数|,所以无需尾数调整。
1.已知X和Y,试用它们的变形补码计算出X+Y,并指出结果是否溢出。
(1)X=0.11011,Y=0.11111
(2)X=0.11011,Y=-0.10101
(3)X=-0.10110,Y=-0.00001
(4)X=-0.11011,Y=0.11110
解:(1)[X]补=0.11011,[Y]补=0.11111
求:[1/2X]补,[1/4X]补,[-X]补,[1/2Y]补,[1/4Y]补,[-Y]补。
解:[X]补=0.1011
1/2X补
=0.0101,1/4X补
=0.0010,[-X]补=1.0101
[Y]补=1.1011
1/2Y补
=1.1101,1/4Y补
=1.1110,[-Y]补=0.0101
4.设下列数据长8位,包括1位符号位,采用补码表示,分别写出每个数据右移或左移2位之后的结果。
A4B4(S′4+S′3S′2+S′3S′1)
③和在10~14范围内,当A<5,B≥5,或A≥5,B<5,需+3校正,而当A≥5,B≥
5时,不需校正。故校正函数为:
(A4⊕B4)(C′4+S′3S′2+S′3S′1)
④和在16~19范围内(A≥5,B≥5),一定+3校正。
A4B4(S′4+S′3S′2+S′3S′1)
解:(1)原码除法:
因为Qs=Xs磑Y s=0磑0=0
所以XY=0.11000+0.11000×2-5
0.11011
补码除法:
所以XY补=0.11001+1.11101×2-5
0.11011
XY=0.11001+-0.00011×2-5
0.11011
(2)中间过程略。原码除法:X÷Y=-0.11000+0.11000×2-5
2P倡
1C0
8.分别用原码乘法和补码乘法计算X×Y。
(1)X=0.11011,Y=-0.11111
(2)X=-0.11010,Y=-0.01110
解:(1)原码乘法:
所以|X×Y|=0.1101000101
X×Y=-0.1101000101
补码乘法:
所以[X×Y]补=1.0010111011
X×Y=-0.1101000101
5421码的校正关系5421码的校正关系十进制数5421码c4s4s3s2s1校正前的二进制数c4s4s3s2s1校正关系0123400000000010001000011001000000000001000100001100100不校正5678901000010010101001011011000010100110001110100001001若a5b5则3校正101112131410000100011001010011101000110101110011111000010101若a或b5b或a5则3校正151617181911000110011101011011111001010110110101111100011001若a5b5则3校正和在04范围内不用校正结果正确
所以X-Y=2001×(-0.110000)
(2)X=2-101×0.101100,Y=2-100×(-0.101000)
[X]浮=1011;0.101100
[Y]浮=1100;1.011000
对阶:小阶向大阶看齐。ΔE=EA-EB=-1
[X]浮′=1100;0.010110
对阶之后,尾数相加和相减。
Ci=Ai Bi+(Ai⊕Bi)Ci-1
欲证明Pi=Ai+Bi=Ai⊕Bi,也就是要证明Ci=Ai Bi+(Ai⊕Bi)Ci-1=Ai Bi+(Ai
+Bi)Ci-1
用卡诺图法,图4唱10(a)和4唱10(b)分别是两个逻辑表达式的卡诺图。两个卡诺图相同,两个逻辑表达式就相等,则进位传递函数的两种形式相等。
(2)X×Y=0.0101101100,过程略。
10.根据补码两位乘法规则推导出补码3位乘法的规则。
解:先根据补码1位乘法推出补码2位乘法规则,再根据补码2位乘法推出补码3
位乘法规则。
[Z′]补=2-1{[Z]补+(Y i+1-Y i)[X]补}
[Z′′]补=2-1{[Z′]补+(Y i-Y i-1)[X]补}
00.11011[X]补
+00.11111[Y]补
01.11010[X+Y]补 结果正溢
(2)[X]补=0.11011,[Y]补=1.01011
00.11011[X]补
+11.01011[Y]补
00.00110[X+Y]补
X+Y=0.00110
(3)[X]补=1.01010,[Y]补=1.11111
解:设1位被加数为A4A3A2A1,加数为B4B3B2B1。5421码的校正关系5421码的校正关系
十进制数
5421码
C4S4S3S2S1
校正前的二进制数
C′4S′4S′3S′2S′1
校正关系
①
0
1
2
3
400000
00001
00010
00011
0010000000
00001
00010
00011
00100
00.11011[X]补
+00.10011[-Y]补
01.01110[X-Y]补 结果正溢
(4)[X]补=1.01010,[Y]补=1.11111,[-Y]补=0.00001
11.01010[X]补
+00.00001[-Y]补
11.01011[X-Y]补
X-Y=-0.10101
3.已知:X=0.1011,Y=-0.0101
=2-3{[Z]补+(Y i+1+Y i+2Y i-1-4Y i-2)×[X]补}
11.分别用原码和补码加减交替法计算X÷Y。
(1)X=0.10101,Y=0.11011
(2)X=-0.10101,Y=0.11011
(3)X=0.10001,Y=-0.10110
(4)X=-0.10110,Y=-0.11011
阶码相减EA-EB=3-5=-2
尾数相除:由补码除法规则求得:-0.1101+-0.1101×2-4
0.1111
X÷Y=-0.1101+-0.1101×2-4
0.1111×2-2
14.用流程图描述浮点除法运算的算法步骤。
解:浮点除法运算的算法流程图如图4唱12所示。
图4唱12浮点除法运算流程图
15.设计一个1位5421码加法器。
[Y]浮′=0101;1.100001
对阶之后,尾数相加和相减。
相加:11.011110
+11.100001
10.111111
需右规一次,[X+Y]浮=0110;1.011111
所以X+Y=2110×(-0.100001)
相减:11.011110
+00.011111
11.111101
需左规4次,[X-Y]浮=0001;1.010000
6.某加法器采用组内并行、组间并行的进位链,4位一组,写出进位信号C6的逻辑表达式。
解:最低一组的进位输出C4=G倡
1+P倡
1C0
其中:G倡
1=G4+P4G3+P4P3G2+P4P3P2G1
P倡
1=P4P3P2P1
C5=G5+P5C4
所以C6=G6+P6C5=G6+P6G5+P6P5C4
7.设计一个9位先行进位加法器,每3位为一组,采用两级先行进位线路。
01.11010[X-Y]补 结果正溢
(2)[X]补=0.10111,[Y]补=0.11011,[-Y]补=1.00101
00.10111[X]补
+11.00101[-Y]补
11.11100[X-Y]补
X-Y=-0.00100
(3)[X]补=0.11011,[Y]补=1.01101,[-Y]补=0.10011
(2)1.0011001
(3)1.1100110
(4)1.0000111
解:(1)[X]补=0.1100100
1/4X补=0.0011001,[4X]补=0.0010000
2)[X]补=1.0011001
1/4X补=1.1100110,[4X]补=1.1100100
(3)1.1100110
解:
C1=G1+PC0
C2=G2+P2G1+P2P1C0
C3=G3+P3G2+P3P2G1+P3P2P1C0
设பைடு நூலகம்G倡
1=G3+P3G2+P3P2G1,P倡
1=P3P2P1
则有:
C3=G倡
1+P倡
1C0
C6=G倡
2+P倡
2G倡
1+P倡
2P倡
1C0
C9=G倡
3+P倡
3G倡
2+P倡
3P倡
2G倡
1+P倡
3P倡
0.11011
补码除法:X÷Y=0.11011-0.11001×2-5
0.11011
12.设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列
各题:
(1)X=2101×(-0.100010),Y=2100×(-0.111110)
(2)X=2-101×0.101100,Y=2-100×(-0.101000)
将3部分校正函数统一考虑并化简,得:
1/4X补=1.1111001,[4X]补=1.0011000
(4)1.0000111
1/4X补=1.1100001,[4X]补=1.0011100
5.证明在全加器里,进位传递函数P=A i+Bi=Ai⊕Bi。
解:并行加法器中的每一个全加器都有一个从低位送来的进位和一个传送给较高位
的进位。进位表达式为
=2-2{[Z]补+(Y i+1+Y i-2Y i-1)[X]补}
[Z′′′]补=2-1{[Z′′]补+(Y i-1-Y i-2)[X]补}
=2-1{2-2{[Z]补+(Y i+1+Y i-2Y i-1)[X]补}+(Y i-1-Y i-2)[X]补}
01=2-3{[Z]补+(Y i+1+Y i-2Y i-1)×[X]补+22×(Y i-1-Y i-2)[X]补}
11.01010[X]补
+11.11111[Y]补
11.01001[X+Y]补
X+Y=-0.10111
(4)[X]补=1.00101,[Y]补=0.11110
11.00101[X]补
+00.11110[Y]补
00.00011[X+Y]补
X+Y=0.00011
2.已知X和Y,试用它们的变形补码计算出X-Y,并指出结果是否溢出。
(3)X=2-011×0.101100,Y=2-001×(-0.111100)
注:此题中阶码用二进制表示。
求:X+Y,X-Y。
解:(1)X=2101×(-0.100010),Y=2100×(-0.111110)
[X]浮=0101;1.011110
[Y]浮=0100;1.000010
对阶:小阶向大阶看齐,ΔE=EA-EB=1,
(1)X=0.11011,Y=-0.11111
(2)X=0.10111,Y=0.11011
(3)X=0.11011,Y=-0.10011
(4)X=-0.10110,Y=-0.00001
解:(1)[X]补=0.11011,[Y]补=1.00001,[-Y]补=0.11111
00.11011[X]补
+00.11111[-Y]补
相减:00.001011
+00 .111100
01.000111
需右规一次,[X-Y]浮=0000;0.100011
所以X-Y=2-000×0.100011
13.设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列
各题:
(1)X=23×13/16,Y=24×-9/16
求:X×Y。
(2)X=23×-13/16,Y=25×15/16
④
15
16
17
18
1911000
11001
11010
11011
1110010101
10110
10111
11000
11001
若A≥5,B≥5,
则+3校正
①和在0~4范围内,不用校正,结果正确。
②和在6~9范围内,当A<5,B<5,需+3校正,而当A<5,B≥5或A≥5,B<5
时,不需校正。故校正函数为:
0.11011
补码除法:X÷Y=-0.11001+0.00011×2-50.11011
(3)中间过程略。原码除法:X÷Y=-0.11000+0.10000×2-5
0.10110
补码除法:X÷Y=-0.11001+0.00101×2-5
0.10110
(4)中间过程略。原码除法:X÷Y=0.11010+0.00010×2-5
相加:00.010110
+11 .011000
11.101110
需左规一次,[X+Y]浮=1011;1.011100
所以X+Y=2-101×(-0.100100)
相减:00.010110
+00.101000
00.111110
所以X-Y=2-100×0.111110
(3)X=2-011×0.101100,Y=2-001×(-0.111100)
不校正
②
5
6
7
8
901000
01001
01010
01011
0110000101
00110
00111
01000
01001
若A<5,B<5,
则+3校正
③
10
11
12
13
1410000
10001
10010
10011
1010001101
01110
01111
10000
10101
若A或B≥5,B或A<5,
则+3校正
[X]浮=__________1101;0.101100
[Y]浮=1111;1.000100
对阶:小阶向大阶看齐。ΔE=EA-EB=-2
[X]浮′=1111;0.001011
对阶之后,尾数相加和相减。
相加:00.001011
+11 .000100
11.001111
所以X+Y=2-001×(-0.110001)
求:X÷Y。
解:(1)X=23×13/16,Y=24×-9
阶码相加:EA+EB=3+4=7
尾数相乘:由补码乘法规则求得:-0.01110101
结果规格化:左规一次,X×Y=-0.11101010×26
(2)X=23×-13/16,Y=25×15/16
尾数调整:因为|X尾数|≤|Y尾数|,所以无需尾数调整。
1.已知X和Y,试用它们的变形补码计算出X+Y,并指出结果是否溢出。
(1)X=0.11011,Y=0.11111
(2)X=0.11011,Y=-0.10101
(3)X=-0.10110,Y=-0.00001
(4)X=-0.11011,Y=0.11110
解:(1)[X]补=0.11011,[Y]补=0.11111
求:[1/2X]补,[1/4X]补,[-X]补,[1/2Y]补,[1/4Y]补,[-Y]补。
解:[X]补=0.1011
1/2X补
=0.0101,1/4X补
=0.0010,[-X]补=1.0101
[Y]补=1.1011
1/2Y补
=1.1101,1/4Y补
=1.1110,[-Y]补=0.0101
4.设下列数据长8位,包括1位符号位,采用补码表示,分别写出每个数据右移或左移2位之后的结果。
A4B4(S′4+S′3S′2+S′3S′1)
③和在10~14范围内,当A<5,B≥5,或A≥5,B<5,需+3校正,而当A≥5,B≥
5时,不需校正。故校正函数为:
(A4⊕B4)(C′4+S′3S′2+S′3S′1)
④和在16~19范围内(A≥5,B≥5),一定+3校正。
A4B4(S′4+S′3S′2+S′3S′1)
解:(1)原码除法:
因为Qs=Xs磑Y s=0磑0=0
所以XY=0.11000+0.11000×2-5
0.11011
补码除法:
所以XY补=0.11001+1.11101×2-5
0.11011
XY=0.11001+-0.00011×2-5
0.11011
(2)中间过程略。原码除法:X÷Y=-0.11000+0.11000×2-5
2P倡
1C0
8.分别用原码乘法和补码乘法计算X×Y。
(1)X=0.11011,Y=-0.11111
(2)X=-0.11010,Y=-0.01110
解:(1)原码乘法:
所以|X×Y|=0.1101000101
X×Y=-0.1101000101
补码乘法:
所以[X×Y]补=1.0010111011
X×Y=-0.1101000101
5421码的校正关系5421码的校正关系十进制数5421码c4s4s3s2s1校正前的二进制数c4s4s3s2s1校正关系0123400000000010001000011001000000000001000100001100100不校正5678901000010010101001011011000010100110001110100001001若a5b5则3校正101112131410000100011001010011101000110101110011111000010101若a或b5b或a5则3校正151617181911000110011101011011111001010110110101111100011001若a5b5则3校正和在04范围内不用校正结果正确
所以X-Y=2001×(-0.110000)
(2)X=2-101×0.101100,Y=2-100×(-0.101000)
[X]浮=1011;0.101100
[Y]浮=1100;1.011000
对阶:小阶向大阶看齐。ΔE=EA-EB=-1
[X]浮′=1100;0.010110
对阶之后,尾数相加和相减。
Ci=Ai Bi+(Ai⊕Bi)Ci-1
欲证明Pi=Ai+Bi=Ai⊕Bi,也就是要证明Ci=Ai Bi+(Ai⊕Bi)Ci-1=Ai Bi+(Ai
+Bi)Ci-1
用卡诺图法,图4唱10(a)和4唱10(b)分别是两个逻辑表达式的卡诺图。两个卡诺图相同,两个逻辑表达式就相等,则进位传递函数的两种形式相等。
(2)X×Y=0.0101101100,过程略。
10.根据补码两位乘法规则推导出补码3位乘法的规则。
解:先根据补码1位乘法推出补码2位乘法规则,再根据补码2位乘法推出补码3
位乘法规则。
[Z′]补=2-1{[Z]补+(Y i+1-Y i)[X]补}
[Z′′]补=2-1{[Z′]补+(Y i-Y i-1)[X]补}
00.11011[X]补
+00.11111[Y]补
01.11010[X+Y]补 结果正溢
(2)[X]补=0.11011,[Y]补=1.01011
00.11011[X]补
+11.01011[Y]补
00.00110[X+Y]补
X+Y=0.00110
(3)[X]补=1.01010,[Y]补=1.11111
解:设1位被加数为A4A3A2A1,加数为B4B3B2B1。5421码的校正关系5421码的校正关系
十进制数
5421码
C4S4S3S2S1
校正前的二进制数
C′4S′4S′3S′2S′1
校正关系
①
0
1
2
3
400000
00001
00010
00011
0010000000
00001
00010
00011
00100
00.11011[X]补
+00.10011[-Y]补
01.01110[X-Y]补 结果正溢
(4)[X]补=1.01010,[Y]补=1.11111,[-Y]补=0.00001
11.01010[X]补
+00.00001[-Y]补
11.01011[X-Y]补
X-Y=-0.10101
3.已知:X=0.1011,Y=-0.0101
=2-3{[Z]补+(Y i+1+Y i+2Y i-1-4Y i-2)×[X]补}
11.分别用原码和补码加减交替法计算X÷Y。
(1)X=0.10101,Y=0.11011
(2)X=-0.10101,Y=0.11011
(3)X=0.10001,Y=-0.10110
(4)X=-0.10110,Y=-0.11011
阶码相减EA-EB=3-5=-2
尾数相除:由补码除法规则求得:-0.1101+-0.1101×2-4
0.1111
X÷Y=-0.1101+-0.1101×2-4
0.1111×2-2
14.用流程图描述浮点除法运算的算法步骤。
解:浮点除法运算的算法流程图如图4唱12所示。
图4唱12浮点除法运算流程图
15.设计一个1位5421码加法器。
[Y]浮′=0101;1.100001
对阶之后,尾数相加和相减。
相加:11.011110
+11.100001
10.111111
需右规一次,[X+Y]浮=0110;1.011111
所以X+Y=2110×(-0.100001)
相减:11.011110
+00.011111
11.111101
需左规4次,[X-Y]浮=0001;1.010000
6.某加法器采用组内并行、组间并行的进位链,4位一组,写出进位信号C6的逻辑表达式。
解:最低一组的进位输出C4=G倡
1+P倡
1C0
其中:G倡
1=G4+P4G3+P4P3G2+P4P3P2G1
P倡
1=P4P3P2P1
C5=G5+P5C4
所以C6=G6+P6C5=G6+P6G5+P6P5C4
7.设计一个9位先行进位加法器,每3位为一组,采用两级先行进位线路。
01.11010[X-Y]补 结果正溢
(2)[X]补=0.10111,[Y]补=0.11011,[-Y]补=1.00101
00.10111[X]补
+11.00101[-Y]补
11.11100[X-Y]补
X-Y=-0.00100
(3)[X]补=0.11011,[Y]补=1.01101,[-Y]补=0.10011