计算机组成原理作业习题答案.ppt
2008.10,北京理工大学计算机科学技术学院,习题讲评,计算机组成原理习题串讲,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-3 设计一个9位先行进位加法器,每3位为一组,采用两级先行进位线路。C1=G1+P1C0 C2=G2+P2G1+P2P1C0 C3=G3+P3G2+P3P2G1+P3P2P1C0,G1*,P1*,C6=G2*+P2*G1*+P2*P1*C0C9=G3*+P3*G2*+P3*P2*G1*+P3*P2*P1*C0,=G1*+P1*C0,2008.10,北京理工大学计算机科学技术学院,习题讲评,3位CLA电路,3位BCLA加法器,3位BCLA加法器,3位BCLA加法器,C0,C3,C6,C9,G1*,G2*,G3*,P1*,P2*,P3*,A3A1,A6A4,A9A7,B3B1,B6B4,B9B7,S3S1,S6S4,S9S7,CLA:先行进位 BCLA:成组先行进位,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-4 已知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,2008.10,北京理工大学计算机科学技术学院,习题讲评,(1)X=0.11011,Y=0.11111 X补=0.11011,Y补=0.11111,00.11011,+00.11111,01.11010,正溢,结果溢出错误,(2)X=0.11011,Y=-0.10101 X补=0.11011,Y补=1.01011,00.11011,+11.01011,00.00110,X+Y补=00.00110X+Y=0.00110,2008.10,北京理工大学计算机科学技术学院,习题讲评,(3)X=-0.10110,Y=-0.00001 X补=1.01010,Y补=1.11111,11.01010,+11.11111,11.01001,X+Y补=11.01001X+Y=-0.10111,2008.10,北京理工大学计算机科学技术学院,习题讲评,(4)X=-0.11011,Y=0.11110 X补=1.00101,Y补=0.11110,11.00101,+00.11110,00.00011,X+Y补=00.00011X+Y=0.00011,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-5 已知X和Y,试用它们的变形补码计算出X-Y,并指出结果是否溢出。(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,2008.10,北京理工大学计算机科学技术学院,习题讲评,00.11011,+00.11111,01.11010,结果溢出错误,(2)X=0.10111,Y=0.11011X补=0.10111,Y补=0.11011,-Y补=1.00101,00.10111,+11.00101,11.11100,X-Y补=11.11100X-Y=-0.00100,(1)X=0.11011,Y=-0.11111X补=0.11011,Y补=1.00001,-Y补=0.11111,正溢,2008.10,北京理工大学计算机科学技术学院,习题讲评,00.11011,+00.10011,01.01110,结果溢出错误,(4)X=-0.10110,Y=-0.00001X补=1.01010,Y补=1.11111,-Y补=0.00001,11.01010,+00.00001,11.01011,X-Y补=11.01011X-Y=-0.10101,(3)X=0.11011,Y=-0.10011X补=0.11011,Y补=1.01101,-Y补=0.10011,正溢,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-6 已知:X=0.1011,Y=-0.0101求:1/2X补,1/4X补,-X补,1/2Y补,1/4Y补,-Y补,X=0.1011 X补=0.1011,1/2X补=0.0101,1/4X补=0.0010,-X补=1.0101,Y=-0.0101 Y补=1.1011,1/2Y补=1.1101 1/4Y补=1.1110,-Y补=0.0101,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-8 分别用原码一位乘法和补码一位乘法计算XY。X=0.11011,Y=-0.11111 X=-0.11010,Y=-0.01110,XY=-0.1101000101 XY=0.0101101100,4-9 用补码两位乘法计算XY。X0.101101 Y-0.011110 X0.10110 Y-0.00011,XY=XY=-0.0001000010,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-10 分别用原码加减交替法和补码加减交替法计算XY。X=-0.10101,Y=0.11011 X=-0.10110,Y=-0.11011,2008.10,北京理工大学计算机科学技术学院,习题讲评,X=-0.10110,Y=-0.11011原码除法:XY=0.11010+补码除法:XY=0.11011-,0.000102-5,0.11011,0.110012-5,0.11011,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-11 设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,X=2101(-0.100010),Y=2100(-0.111110),求X+Y,X-Y。,1.求X+Y 对阶:小阶向大阶看齐。所以 Y浮=0101;1.100001,X浮=0101;1.011110 Y浮=0100;1.000010,2008.10,北京理工大学计算机科学技术学院,习题讲评,尾数相加 11.011110+11.100001 10.111111,2.求X-Y 对阶:小阶向大阶看齐。所以 Y浮=0101;1.100001,尾数结果规格化 右规一次。尾数右移一位,阶码加1。X+Y浮=0110;1.011111 X+Y=2110(-0.100001),2008.10,北京理工大学计算机科学技术学院,习题讲评,尾数相减-Y尾补=0.011111 11.011110+00.011111 11.111101,尾数结果规格化 左规四次。尾数每左移一位,阶码减1。X-Y浮=0001;1.0100000 X-Y=2001(-0.110000),2008.10,北京理工大学计算机科学技术学院,习题讲评,4-12 设浮点数的阶码和尾数部分均用补码表示,按照浮点数的运算规则,计算下列各题:X=23,Y=24(-),求XY。X=23(-),Y=25,求XY。,13,16,9,16,13,16,15,16,2)尾数相乘 由补码乘法规则求得:0.01110101,2008.10,北京理工大学计算机科学技术学院,习题讲评,2)阶码相减 00011+11011 11110 阶码=-010,3)结果规格化 左规一次,阶码减一。XY=-0.1110101026,1)尾数调整|X尾数|Y尾数|无需尾数调整,2008.10,北京理工大学计算机科学技术学院,习题讲评,3)尾数相除 由补码除法规则求得:-0.1101+,-0.11012-4,0.1111,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-14设计一个一位5421码加法器。,A5,B5,,2008.10,北京理工大学计算机科学技术学院,习题讲评,A5,B5,,2008.10,北京理工大学计算机科学技术学院,习题讲评,不用校正,结果正确当A5,B5,需+3校正,如:1+4=5,4+4+1=9 当A5,B5或A5,B5,无需校正,如:0+5=5,4+5=9 A4B4(S4+S3S2+S3S1)当A5,B5,或A5,B5,需+3校正,如:,2008.10,北京理工大学计算机科学技术学院,习题讲评,4+9+1=14 当 A5,B5,无需校正,如:5+9=14(A4B4)(C4+S3S2+S3S1)A5,B5,一定+3校正。A4B4(S4+S3S2+S3S1)校正函数=S3S2+S3S1+(A4B4)S4+(A4B4)C4,=S3S2+S3S1+C3,2008.10,北京理工大学计算机科学技术学院,习题讲评,4-16 用74181和74182芯片构成一个64位的ALU,采用多级分组并行进位链。64位ALU共需要16片74181,5片74182组成。,