计算机组成原理课后作业(二)

1.已知定点小数X和Y,数值位为5位,试使用变形补码方式计算:X+Y。
其中:X = -0.10001,
        Y = -0.11110,
【答】先求X和Y的变形补码:[X]补=[填空1](双符号)

[Y]补 = [填空2](双符号)

[X]补 + [Y]补 = [填空3](双符号) 即X+Y为[填空4]

注意:填空4如果没溢出,给出二进制真值;若溢出,填“正溢/负溢”。

【答案】

先将X与Y转为双符号位:X = 10.10001,Y = 10.11110(注意符号位不要变)

再转为补码:[X]补 = 11.01111,[Y]补 = 11.00010,得前两空答案

[X]补 + [Y]补 直接将两补码求和即可,得 = 10.10001

双符号位的两个数字为10,故为下溢/负溢

2.已知定点小数X和Y,数值位为5位,试使用变形补码方式计算:X-Y。
其中:X=-0.11111,
        Y=-0.11001,
【答】先求X和Y的变形补码:

[X]补 = [填空1](双符号)

[-Y]补 = [填空2](双符号)

[X]补 - [Y]补 = [X]补 + [-Y]补 = [填空3](双符号) 即X + Y为[填空4]

注意:填空4如果没溢出,给出二进制真值;若溢出,填“正溢/负溢”。

【答案】

先将X与-Y转变为双符号位:X = 10.11111,-Y = 00.11001

再转为补码:[X]补 = 11.00001,[Y]补 = 00.11001(正数不用变),得前两空答案

两者相加,得[X]补 - [Y]补 = [X]补 + [-Y]补 = 11.11010,符号位两数字相同,未溢出

由于相加结果为补码。要得到真值则需要再将结果进行转化,则真值为:-0.00110

3.已知定点小数:X=+33/64,Y= -61/64,试使用变形补码方式分别计算(要求对运算结果进行溢出检测,若溢出,要求指明正溢/负溢,数值位6位)∶

(1)求X,Y,-Y的变形补码

(2)X + Y;

(3)X - Y。

【答】

(1) X,Y,-Y的变形补码:

[X]补 = [填空1](双符号)

[Y]补 = [填空2](双符号)

[-Y]补 = [填空3](双符号)
 

【答案】

1/64为2^-6,因此小数点向前移动6位,X的分子部分的33用二进制表示为100001,X = 00.100001 = [X]补

对于Y,61用二进制表示为111101,故Y = -0.111101 = 10.111101,[Y]补 = 11.000011

-Y = 0.111101 = 00.111101,[-Y]补 = 00.111101

【答】

(2)X + Y

[X]补 + [Y]补 = [填空1] 即X + Y为[填空2]

(3X - Y

[X]补 - [Y]补 = [填空3] 即X - Y为[填空4]

【答案】

[X]补 + [Y]补 = 00.100001 + 11.000011 = 11.100100,即X + Y为-0.011100

[X]补 - [Y]补 = 00.100001 + 00.111101 = 01.011110,双符号位为01,故为上溢

4.已知定点整数:X = -17,Y = -30,设数值位为5位。试使用变形补码方式计算:X+Y

[X]补 = [填空1](双符号)

[Y]补 = [填空2](双符号)

[X]补 + [Y]补 = [填空3](双符号) 即X + Y为[填空4]

注意:整数符号位与数值位之间,用逗号分隔。填空4如果没溢出,给出二进制真值;若溢出,填“正溢/负溢”。

【答案】

用双符号位表示:|X| = 17 = 00,10001,X = 10,10001,[X]补 = 11,01111

|Y| = 30 = 00,11110, Y = 10,11110, [Y]补 = 11,00010

[X]补 + [Y]补 = 11,01111 + 11,00010 = 10,10001,双符号位为10,因此为下溢

5.用原码一位乘法计算:x×y。已知:x=-0.11010,y=-0.01011。

【答案】

6.用补码一位乘法计算:x×y。已知:x=0.10011,y=-0.01011。

【答案】

 

 7.设X=+15/32,Y=-13/32,试用带求补器的补码阵列乘法器计算:XxY。
答:

[X]补=[填空1],
[Y]补=[填空2]
符号位: xf⊕yf=[填空3]

算前求补,得:
X’=[填空4],Y' =[填空5]
阵列计算输出得:[填空6],

算后求补输出,得:
[填空7]
即[X×Y]补=[填空8]

因此X×Y=[填空9]

【答案】

8.已知:X = +17.5,Y = -9。试用浮点数运算方法完成计算:X + Y。要求阶码,尾数均采用补码,双符号位;运算过程中,尾数数值位保持6位;舍入规则采用截去法。
【答案】

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值