南京大学计算机系 多媒体技术研究所 袁春风 1
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
参考答案: (1) 被乘数不需右移; (2) 只需做n次运算; (3) 对; (4) 对; (5) ALU是算术逻辑运算部件的简称; (6) 不仅完成算术运算,还执行逻辑运算。
9
南京大学计算机系 多媒体技术研究所 袁春风
作业解答
(4)习题14
参考答案:(计算略) BCD码加法运算中溢出判断: N位十进制数的BCD码加法器进行加法运算,若最 高位第n位十进制数位需要+6修正时,就产生了溢 出。
1.
习题6(浮点补码加减法中,结果的尾数符号位为01或10时,说 明结果溢出。这种说法是否正确?) 不正确。只有当阶码溢出时,结果才溢出。 习题7(尾数用原码表示,采用0舍1入法进行舍入,请问在何种 情况下浮点运算需要规格化?如何规格化?) 加减法:最多右规一次(1.xx…xx) ,可能若干次左规。 乘法:不需要右规,最多左规一次(0.01xx…x)。 除法:不需要左规,最多右规一次(1.xx…xx)
作业解答 用布斯乘法计算[x*y]补。
参考答案
注意:在乘数[y]补后添一个0,部分积保留一位或两位符号位。 右移时按补码规则进行,最后一步不要移位。 (1) 1 0111 1110 10 [x*y]补=1.01111110 x*y=-0.1000001
x=0.1010, [x]补=0.1010; y=-0.1101, [y]补=1. 0011
用两种方法计算[x/y]补的商和余数。
参考答案(略)
注意:先将x和y变成正数,然后用恢复余数法和加减交替法计 算无符号数的商和余数。再按符号进行调整。
5
南京大学计算机系 多媒体技术研究所 袁春风
作业解答
用补码一位除法计算[x/y]补的商和余数。
x=0.1010, [x]补=0.1010; y=-0.1101, [y]补=1. 0011 参考答案
应用递推公式: Pi=2-1(Abi+ Pi-1)
可以用一个双倍字长的乘积 寄存器而不用乘数寄存器实 现;也可用两个单倍字长的 寄存器实现。 部分积初始为0。 保留进位位。 左移时进位、部分积和剩余 乘数一起移位。 [x*y]原=1.10000010 x*y=-0.1000001
4
南京大学计算机系 多媒体技术研究所 袁春风
6
南京大学计算机系 多媒体技术研究所 袁春风
作业解答
用补码一位除法计算[x/y]补的商和余数。
x=0.1010, [x]补=0.1010; y=-0.1101, [y]补=1. 0011 参考答案
注意点: (2) 若用课上的算法,则初始A中为6位被除数(多加一位符号)、 Q 中有5位0。 最后一步得到余数:00 0100 ;商:01100 因为被除数和除数符号相反,所以商应为负数,故应对商求 补得10100。该方法的余数无需纠正。 所以:商的补码为1.0100 其真值为-0.1100; 余数的补码为0.0000 0100 其真值为0.0100X2-4;
作业
思考题 (1) 习题2,习题6,习题7
1.
2. 作业题(要求做在本子上) (1) 习题3 (除第(4)小题以外) (2) 习题10 (3) 习题12 (4) 习题14 (5) 已知:x=2-011x 0.101100 y=2-101x(-0.011110) 求:[x+y]补;[x-y]补;[x+y]阶移尾补;[x-y]阶移尾补
3
南京大学计算机系 多媒体技术研究所 袁春风
作业解答
用原码一位乘法计算[x*y]原。
设A=1010 B=1101
C 0 + 0 0 0 + 0 0 + 1 0 乘积P 0000 1010 1010 0101 0010 1010 1100 0110 1010 0000 1000 乘数R 1101 1101 0110 1011 1011 0101 0101 0010 x=0.1010, [x]原=0.1010; y=-0.1101, [y]原=1. 1101
1
南京大学计算机系 多媒体技术研究所 袁春风
Байду номын сангаас
作业解答
思考题 习题2(用寄存器、181和182实现16位补码加减法器) 1.利用SN74181芯片中的加法功能(S0S1S2S3=1001,Cn=1); 2.用4个SN74181芯片和1个SN74182芯片组成16位加减法器 3.减法功能可用加法器实现,减数用各位取反、末位加1
注意点: (1) 若用书中的算法,则A 中为被除数(可用双符号) 、Q中为5位0。 最后一步得到余数:(1)10111 ;商:10011。 因为商为负数,故应加1,得商为10100。 因为余数符号不同于被除数符号,所以应对余数进行修正。根 据被除数和除数符号的不同,知真正的余数为 10111+01101=00100 。 所以:商的补码为1.0100 其真值为-0.1100; 余数的补码为0.0000 0100 其真值为0.0100X2-4;
2
南京大学计算机系 多媒体技术研究所 袁春风
作业解答
(1) 习题3 (除第(4)小题以外) 已知二进制数x=0.1010,y=-0.1101。请按如下要求计 算,并把结果还原成真值。 求[x+y]补,[x-y]补 参考答案: x=0.1010, [x]补=0.1010; y=-0.1101, [y]补=1.0011 [x+y]补= [x]补+[y]补=0.1010+1.0011=1.1101 所以 x+y=-0.0011 [x-y]补= [x]补+[-y]补=0.1010+0.1101=1.0111 所以 x-y=溢出
7
南京大学计算机系 多媒体技术研究所 袁春风
作业解答 (2)习题10
参考答案:
X0Y0 + X0Y0 + X0Y0f0 + X0Y0f0
8
南京大学计算机系 多媒体技术研究所 袁春风
作业答案
(3)习题12
(1) 定点补码一位乘法中被乘数也要右移。 (2) 两个n位定点补码数(包括一位符号位)参加布斯乘法运算,共需 做n+1次运算,第n+1次运算不右移。 (3) 在定点小数补码一位除法中,为了避免溢出,被除数的绝对值一定 要小于除数的绝对值。 (4) 浮点数的阶码只执行加、减运算。 (5) ALU是运算器的英文简称。 (6) 定点运算器只完成数据的算术运算。