计算机组成原理课后习题答案一到九章

发布时间 : 星期一 文章计算机组成原理课后习题答案一到九章更新完毕开始阅读

[x/y]原=0.10000 [x/y]补=0.10000 or [x/y]补=0.10001 (2) x=0.10011 y=-0.11101

[x/y]原=1.10100 [x/y]补=1.01100 or [x/y]补=1.01011 (3) x=-0.10111 y=-0.11011

[x/y]原=0.11100 [x/y]补=0.11101 or [x/y]补=0.11100 (4) x=+10110 y=-00110

[x/y]原=100011 [x/y]补=111101

3.7 在进行浮点加减运算时,为什么要进行对阶?说明对阶的方法和理由。 答:

3.8 已知某模型机的浮点数据表示格式如下:

0 数符 1 阶符 2 7 阶码 8 15 尾数 其中,浮点数尾数和阶码的基值均为2,均采用补码表示。

(1) 求该机所能表示的规格化最小正数和非规格化最小负数的机器数表示

及其所对应的十进制真值。

(2)已知两个浮点数的机器数表示为EF80H和FFFFH,求它们所对应的十进制真值。

(3)已知浮点数的机器数表示为:

[x]补=1 1111001 00100101,[y]补=1 1110111 00110100 试按浮点加减运算算法计算[x±y]补。 3.9 已知某机浮点数表示格式如下:

0 1 数符 阶符 2 5 阶 码 6 11 尾 数 其中,浮点数尾数和阶码的基值均为2,阶码用移码表示,尾数用补码表示。设:

x=0.110101×2-001 y=-0.100101×2+001

试用浮点运算规则计算x+y、x-y、x×y、x/y。(要求写出详细运算步骤,并进行规格化)。

解:机器数 [x]补=0 01111 110101 [y]补=1 10001 011011 [-y]补=0 10001 100101

(1)x+y 机器数 [x+y]补=1 10000 010000 x+y=-0.110000×20 对阶: [Δe]移=[ex]移+[-ey]补=01111+11111=01110,Δe=ex-ey=-00010 小阶对大阶:[x]补=0 10001 001101

[x+y]补=1 10000 010000 x+y=-0.110000×20

(2)x-y

[x-y]补=0 10001 110010 x-y=0.110010×21

(3)x×y x×y=-0.111110×2-001=-0.111110×2-1 阶码相加:[ex+ey]移=[ex]移+[ey]补=01111+00001=10000

尾数可采用定点补码乘法(双符号位):[Sx×Sy]补=[Sx]补×[Sy]补=11.100001010111

规格化:[x×y]补=1 01111 000010 x×y=-0.111110×2-001=-0.111110×2

-1

(4)x/y

尾数|Sx|>|Sy|,Sx右移得:[Sx]补=00.011010,[ex]移=10000, 阶码相减:[ex-ey]移=[ex]移+[-ey]补=10000+11111=01111

尾数用补码不恢复余数法:[Sx/Sy]补=[Sx]补/[Sy]补=1.010011(恒置1) OR 1.010100(校正)

规格化:[x/y]补=1 01111 010011 OR 1 01111 010100

x/y=-0.101101×2-001 OR -0.101100×2-001 3.10

00. 0 0 0 0 0 1 0 0 1 1 0 0 00. 0 0 0 0 0 0 1 0 0 1 1 0 -x 00. 1 1 0 0 1 00. 1 1 0 0 1 00. 0 1 1 0 0 1 0 1 0 0 1 1 00. 0 0 1 1 0 0 1 0 1 0 0 1 +x 11. 0 0 1 1 1 11. 0 1 1 0 1 11. 1 0 1 1 0 1 0 1 0 1 0 0 11. 1 1 0 1 1 0 1 0 1 0 1 0 -x 00. 1 1 0 0 1

00. 1 0 1 0 0 0 1 0 1 0 1 0

得 [X×Y]补= X×Y=

寄存器 A B C 运算初态 00 00000 11 00111 1001100 运算终态 00 10100 11 00111 0101010 3.11 说明定点补码和浮点补码加减运算的溢出判断方法。 答:⑴ 定点补码加减运算的溢出判断方法:

① 根据两个操作数的符号与结果的符号判别溢出OVR=xfyfsf+xfyfsf=?xf?sf??yf?sf?

② 根据两数相加时产生的进位判别溢出:OVR=Cf⊕C1 ③ 根据变形补码运算后的符号判别溢出:

sf1sf2=00,表示结果为正数,无溢出; sf1sf2=11,表示结果为负数,无溢出; sf1sf2=01,表示结果为正溢出; sf1sf2=10,表示结果为负溢出。 ⑵ 浮点补码加减运算的溢出判断方法

浮点补码加减运算的溢出通常是指浮点数上溢,浮点数是否溢出是由阶码是否大于浮点数所能表示的最大正阶来判断的。

例如,设浮点数的阶码采用补码表示,双符号位,这时浮点数的溢出与否可由阶码的符号进行判断:

若阶码 [j]补=01 ××…×,则表示出现上溢,需作溢出处理; 符号

若阶码 [j]补=10 ××…×,则表示出现下溢,按机器零处理。 3.12 说明定点原码除法和定点补码除法运算的溢出判断方法。 答:定点原码不恢复余数除法的溢出算法为:

因为在定点小数运算时,若|被除数|>|除数|,则除法将发生溢出,不能进行除法运算。因此,如果在第一次上商时得到的商为“1”,则表示除法发生溢出。

定点补码不恢复余数除法的溢出算法为:

当被除数[x]补与除数[y]补同号时,如果余数[r]补与[y]补同号,且上商为“1”,则表示商溢出。当被除数[x]补与除数[y]补异号时,如果余数[r]补与[y]补异号,且上商为“0”,则表示商溢出。

3.13 比较舍入方法中截断法、恒置“1”法和0舍1入法的优缺点。

联系合同范文客服:xxxxx#qq.com(#替换为@)