- 1、本文档共111页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.2 定点加法、减法运算 2.2.1 补码加法 2.2.2 补码减法 2.2.3 溢出概念与检验方法 2.2.4 基本的二进制加法减法器 2.2.5 十进制加法器 2.2.1 补码加法 补码加法的公式是 [x]补+[y]补= [x+y] 补 在模2意义下,任意两数的补码之和等于该两数之和的补码 这是补码加法的理论基础,其结论也适用于定点整数 2.2.1 补码加法(续1) ⑴x﹥0,y﹥0,则x+y﹥0。 相加两数都是正数,故其和也一定是正数。正数的补码和原码是一样的,可得: [x]补+ [y]补=x+y=[x+y]补 (mod 2) 2.2.1 补码加法(续2) ⑵x﹥0,y﹤0,则x+y0或x+y0。 相加的两数一正一负,相加结果有正、负两种可能。 ∵ 根据补码定义,[x] 补=x, [y] 补=2+y ∴ [x]补+ [y]补=x+2+y=2+(x+y) 当(x+y) 0时,2 +(x+y) 2,进位2必丢失,又因(x+y) 0, 故 [x]补+ [y]补=x+y=[x+y]补 (mod 2) 当x+y0时,2 +(x+y) 2,又因(x+y)0, 故 [x]补+ [y]补=2+(x+y) =[x+y]补 (mod 2) 2.2.1 补码加法(续3) ⑶x0,y0,则x+y0或 x+y0。 这种情况和第2种情况一样,把x和y的位置对调即得证。 2.2.1 补码加法(续4) ⑷x0,y0,则x+y0。 相加两数都是负数,则其和也一定是负数。 ∵ [x] 补= 2+x, [y] 补=2+y ∴ [x] 补+ [y] 补= 2+x+ 2+y=2+( 2+x+y) (x+y)是负数,其绝对值又小于1,那么(2 +(x+y))一定是小于2而大于1的数,进位”2”必丢失。又因(x+y)0,所以 [x] 补+ [y] 补= 2+(x+y) =[x+y] 补 (mod 2) 2.2.1 补码加法(续5) 例8:x=0.1001,y=0.0101,求x+y。 解: 例9:x=+0.1011,y=-0.0101, 求x+y 解: 例8之解 [x] 补=0.1001, [y] 补=0.0101 [x] 补 0.1001 + [y] 补 0.0101 [x+y] 补 0.1110 所以 x+y=+0.1110 例9之解 [x] 补=0.1011, [y] 补=1.1011 [x] 补 0.1011 + [y] 补 1.1011 [x+y] 补 10.0110 所以 x+y=0.0110 证明 从[y] 补求[-y] 补的法则是: 对[y]补包括符号位在内“按位求反且最末位加1”,即可得到[-y]补。 写成运算表达式,则为: [-y]补=﹁[y]补+ (2.21) 2.2.2 补码减法(续1) 例10:已知x1=-0.1110,x2=+0.1101, 求: [x1] 补 ,[-x1] 补 ,[x2]补 ,[-x2] 补。 解: 例11:x=+0.1101,y=+0.0110, 求x-y。 解: 例10之解 [x1]补=1.0010 [- x1]补=﹁[x1]补+ 2-4 =0.1101+0.0001=0.1110 [x2]补=0.1101 [- x2]补=﹁[x2]补+ 2-4 =1.0010+0.0001=1.0011 例11之解 [x]补=0.1101, [y]补=0.0110 [-y]补=1.1010 [x] 补 0.1101 + [-y] 补 1.1010 [x-y] 补 10.0111 所以 x-y=+0.0111 [例12] x=+0.1011, y=+0.1001,求x+y。 [解:] [x]补=0.1011 , [y]补=0.1001 [x]补 0.1011 + [y]补 0.1001 [x+y]补 1.0100 两正数相加,结果为负,显然错误。(运算中出现了“上溢”) [又例] x=+0.1011, y=+0.0010, 求x+y。 [解:] [x]补=0.1011 , [y]补=0.0010 [x]补 0.1011 + [y]补 0.0010 [x+y
文档评论(0)