3月23日作业(2.5,2.6)
1.四片74181ALU和一片74182CLA器件配合,具有如下进位传递功能:
b。
a)行波(串行)进位
b)组(片)内先行进位,组(片)间先行进位
c)组(片)内先行进位,组(片)间行波进位
d)组(片)内行波进位,组(片)间先行进位
2.在浮点数原码运算时,判断结果为规格化数的条件是d。
a)阶的符号位与尾数的符号位不同
b)尾数的符号位与最高数值位相同
c)尾数的符号位与最高数值位不同
d)尾数的最高数值位为1
3.对阶时,使小阶向大阶看齐,使小阶的尾数向右移位,每右移
一位,其阶码加1,直到两数的阶码相等为止。
4.在浮点数加减法运算中,当运算结果的尾数的绝对值小于0.5时,需要对结
果进行向左规格化,其操作是尾数每次左移一位,右边补一个零,阶码减一,直到尾数的绝对值大于等于0.5为止。
5.浮点加减乘除运算在阶码溢出情况下会发生溢出。
6.P63 9(2) (注:E和M均采用补码表示,E数值位3位,M数值位6位)解:[x]浮=11011, 1.101010 [y]浮=11100, 0.010110
i.求阶差并对阶
△E=Ex-Ey
=[Ex]补+[-Ey]补=11 011+00 100=11 111
即△E=-1,x的阶码小,应使Mx右移1位,Ex加1, ii.[x]浮=11 100,1.110101(0)
iii.加法
1.尾数求和Mx+My=0.001011
2.左规两次[x+y]浮=11010,0.101100
iv.减法
1.尾数求差Mx-My=1.110101+1.101010=1.011111
2.[x-y]浮=11100,1.011111
主要问题:未给出机器过程;未写清关键步骤;机器表示与真值表示混乱
7.(选作)某字长为8位的计算机中,已知整型变量x、y的机器数分别为[x]补
=1 1110100,[y]补=1 0110000。
若整型变量z=2*x+y/2,则z的机器数为A。
A. 1 1000000
B. 0 0100100
C. 1 0101010
D.溢出
解析:将x左移一位,y右移一位,两个数的补码相加的机器数为1 1000000
8.(选作)浮点数加减运算过程一般包括对阶、尾数运算、规格化、舍入和判
溢出等步骤。
设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含2位符号位)。
若有两个数X=27×29/32,Y=25×5/8,则用浮点数计算X+Y的最终结果是D。
a)00111 1100010 C.00111 010010
B.01000 0010001 D.发生溢出
9.(选作)利用74181ALU和74182CLA器件设计先行进位的32位ALU。
给
出运算速度最快的方案,画出逻辑图。
另,若要将上述ALU改为64位,则至少应使用几片74182CLA,才能使其速度达到最快?
比较三种方案:
C16=G3+P3C12
C12=G3+P3 (G2+G1P2 +G0P1P2 +P0P1P2 C0 )
=G3+ G2P3 +G1P2 P3 +G0P1P2 P3 +P0P1P2P3 C0
∵C16 = G3+P3C12 = G3+P3 (G2+G1P2 +G0P1P2 +P0P1P2 C0 )
=G3+ G2P3 +G1P2 P3 +G0P1P2 P3 +P0P1P2P3 C0
=G*+P* C0
∴可从第三级CLA输出C16:
C16 =G1*+P1* C0(G1*、P1*为第一组182CLA的输出G*、P*)
G1*= G3+ G2P3 +G1P2 P3 +G0P1P2 P3, P1*= P0P1P2P3
比较方案②、③:C12和P*、G*几乎同时产生,故速度相当。
若将位数提高到64位,则至少应使用5片74182CLA,才能使其速度达到最快。
应采用方案③
以下是与本章内容相关近年考研统考题,可试着做做,不用交。
2012年:
13
B
2011年:
43.(11分)假定在一个8位字长的计算机中运行如下类C程序段:
unsigned int x = 134;
unsigned int y = 246;
int m = x;
int n = y;
unsigned int z1 = x–y;
unsigned int z2 = x+y;
int k1 = m–n;
int k2 = m+n;
若编译器编译时将8个8位寄存器R1 ~ R8分别分配给变量x、y、m、n、z1、z2、k1和k2。
请回答下列问题。
(提示:带符号整数用补码表示)
(1)执行上述程序段后,寄存器R1、R5和R6的内容分别是什么?(用十六进制表示)
(2)执行上述程序段后,变量m和k1的值分别是多少?(用十进制表示)
(3)上述程序段涉及带符号整数加/减、无符号整数加/减运算,这四种运算能否利用同一个加法器及辅助电路实现?简述理由。
(4)计算机内部如何判断带符号整数加/减运算的结果是否发生溢出?上述程序段中,哪些带符号整数运算语句的执行结果会发生溢出?
2014年:
13. 若x=103,y=-25,则下列表达式采用8位定点补码运算实现时,会发生溢出的是
A x+y
B -x+y
C x-y
D -x-y
14. float型整数据常用IEEE754单精度浮点格式表示,假设两个float型变量x和y分别在32为寄存器f1和f2中,若(f1)=CC900000H, (f2)=B0C00000H,则x和y之间的关系为:
A x<y且符号相同
B x<y且符号不同
C x>y且符号相同
D x>y且符号不同
2015年:
13. 由3个“1”和5个“0”组成的8位二进制补码,能表示的最小整数是( )
A.-126
B.-125
C.-32
D.-3。