- 1、本文档共60页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ch2运算方法及运算器2
第2章 运算方法和运算器;计算机内部信息;2.1 数据与文字的表示方法;2.2 定点加法、减法运算;一、原码加减法实现;二、补码加减法实现;对[Y]补变补:由[Y]补求[-Y]补; 在补码加减运算中,有时会遇到这样的情况:
两个正数相加,而结果的符号位却为1(结果为负);
;在补码加减运算中,有时会遇到这样的情况:
两个正数相加,而结果的符号位却为1(结果为负);
两个负数相加,而结果的符号位却为0(结果为正)。 ; 溢出的原因:运算结果超过了机器允许的表示范围。
字长为n+1位的定点整数(其中一位为符号位),采用补码表示:
当运算结果大于2n-1 或小于-2n时,就产生溢出。
设参加运算的两数为X、Y
相加:两数异号,不会溢出;只有同号时才可能溢出
相减:只有两数异号时才可能溢出;正溢:
运算结果大于机器所能表示的最大正数
负溢:
运算结果小于机器所能表示的最小负数;3、溢出的判别;3、溢出的判别;例: X=0.0101 Y= - 0.1001 求X±Y=?
解:[X]补=00.0101,[Y]补=11.0111,[-Y]补=00.1001 ;例: X=0.1011 Y=0.1001 求X±Y=?
解:[X]补=00.1011 [Y]补=00.1001 [-Y]补=11.0111 ;例: X= - 0.1011 Y= - 0.1001 求X±Y=?
解:[X]补=11.0101 [Y]补=11.0111 [-Y]补=00.1001 ;对模4补码运算的总结;四、定点数加减法运算的实现;基本的加法和减法器;一位全加器FA; 一位全加器真值表;二进制加/减法器;十进制加法器;一位BCD加法器单元的逻辑结构;2.3 定点数乘法运算;0.1101× (- 0.1011)=-0
0.1101
0.1011
0.1101 ……部分积
0.1101 ……部分积
0.0000 ……部分积
0.1101 ……部分积
0……乘积;一、原码乘法;原码串行乘法实现;原码乘法举例 x*y=0.1101 * -0.1011;练习:仿照计算机的计算过程,用原码码计算X = 0.1101
和Y =-0.0111两个定点小数的乘积。
部分积A 乘数C 被乘数B 0.1101
(乘积的高位部分)(乘积的低位部分) 说明
00 0000 0 1 1 1 起始情况
+)00 1101 乘数最低位为1,加X
00 1101
00 0110 1 0 1 1 1(丢失) 右移部分积和乘数
+)00 1101 乘??最低位为1,加X
01 0011
00 1001 1 1 0 1 1(丢失) 右移部分积和乘数
+)00 1101 乘数最低位为1,加X
01 0110
00 1011 0 1 1 0 1(丢失) 右移部分积和乘数
+)00 0000 乘数最低位为0,加0
00 1011
00 0101 1 0 1 1 0(丢失) 右移部分积和乘数
符号位为负,数值位;二、补码乘法(Booth)实现;例:x=-0.1011, y=-0.1101。 求 x×y=?;练习:[X]补=0.1001,[Y]补=1.1011.求[X·Y]补
解:[-X]补 = 1.0111
得 [X·Y]补 = 1 +) 1 1 0 1 1 1;2.4 定点数除法运算; ;手算除法:x=-0.10010 y=0.11011
上商:0.10101
文档评论(0)