第六章_计算机的运算方法.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 有的机器为方便加减法运算,数据以补码形式存放。如采用原码乘法,则在相乘之前,要将负数还原成原码形式,相乘之后,如乘积为负数,又要将其转换成补码形式,增加了操作步骤。为此,有不少计算机直接采用补码相乘。为了得出补码乘法规律,先讨论补码与真值的转换关系和补码右移的性质。 (2) 补码的右移 在补码运算的机器中,不论数的正负,连同符号位将数右移一位,并保持符号位不变,相当于乘1/2(或除2)。 * 有的机器为方便加减法运算,数据以补码形式存放。如采用原码乘法,则在相乘之前,要将负数还原成原码形式,相乘之后,如乘积为负数,又要将其转换成补码形式,增加了操作步骤。为此,有不少计算机直接采用补码相乘。为了得出补码乘法规律,先讨论补码与真值的转换关系和补码右移的性质。 (2) 补码的右移 在补码运算的机器中,不论数的正负,连同符号位将数右移一位,并保持符号位不变,相当于乘1/2(或除2)。 * 有的机器为方便加减法运算,数据以补码形式存放。如采用原码乘法,则在相乘之前,要将负数还原成原码形式,相乘之后,如乘积为负数,又要将其转换成补码形式,增加了操作步骤。为此,有不少计算机直接采用补码相乘。为了得出补码乘法规律,先讨论补码与真值的转换关系和补码右移的性质。 (2) 补码的右移 在补码运算的机器中,不论数的正负,连同符号位将数右移一位,并保持符号位不变,相当于乘1/2(或除2)。 * 有的机器为方便加减法运算,数据以补码形式存放。如采用原码乘法,则在相乘之前,要将负数还原成原码形式,相乘之后,如乘积为负数,又要将其转换成补码形式,增加了操作步骤。为此,有不少计算机直接采用补码相乘。为了得出补码乘法规律,先讨论补码与真值的转换关系和补码右移的性质。 (2) 补码的右移 在补码运算的机器中,不论数的正负,连同符号位将数右移一位,并保持符号位不变,相当于乘1/2(或除2)。 * 将前述补码乘法公式进行变换,可得出另一公式,是由布斯(Booth)提出的,又称为“布斯公式”。 [X·Y]补=[X]补·(-Y0+ Yi·2-i) =[X]补·[-Y0+Y12-1+Y22-2+…+Yn·2-n] =[X]补·[-Y0+(Y1-Y12-1)+(Y22-1-Y22-2)+… +(Yn2-(n-1)-Yn2-n)] =[X]补[(Y1-Y0)+(Y2-Y1)2-1+… +(Yn-Yn-1)2-(n-1) +(0-Yn)2-n] =[X]补 (Yi+1-Yi)2-i (3.17) 乘数的最低1位为Yn,在其后面再添加1位Yn+1,其值为0。 再将式(3.17)加以变换:按机器执行顺序求出每一步的部分积。 [P0]补=0 [P1]补={[P0]补+(Yn+1-Yn)[X]补}2-1 Yn+1=0 [P2]补={[P1]补+(Yn-Yn-1)[X]补}2-1 … [Pi]补={[Pi-1]补+(Yn-i+2-Yn-i+1)[X]补}2-1 … [Pn]补={[Pn-1]补+(Y2-Y1)[X]补}2-1 [Pn+1]补={[Pn]补+(Y1-Y0)[X]补}=[X·Y]补 * 将前述补码乘法公式进行变换,可得出另一公式,是由布斯(Booth)提出的,又称为“布斯公式”。 [X·Y]补=[X]补·(-Y0+ Yi·2-i) =[X]补·[-Y0+Y12-1+Y22-2+…+Yn·2-n] =[X]补·[-Y0+(Y1-Y12-1)+(Y22-1-Y22-2)+… +(Yn2-(n-1)-Yn2-n)] =[X]补[(Y1-Y0)+(Y2-Y1)2-1+… +(Yn-Yn-1)2-(n-1) +(0-Yn)2-n] =[X]补 (Yi+1-Yi)2-i (3.17) 乘数的最低1位为Yn,在其后面再添加1位Yn+1,其值为0。 再将式(3.17)加以变换:按机器执行顺序求出每一步的部分积。 [P0]补=0 [P1]补={[P0]补+(Yn+1-Yn)[X]补}2-1 Yn+1=0 [P2]补={[P1]补+(Yn-Yn-1)[X]补}2-1 … [Pi]补={[Pi-1]补+(Yn-i+2-Yn-i+1)[X]补}2-1 … [Pn]补={[Pn-1]补+(Y2-Y1)[X]补}2-1 [Pn+1]补={[Pn]补+(Y1-Y0)[X]补}=[X·Y]补 * 部分积初值为0,然后在上一步的部分积上,加(Yi+1-Yi) [X]补(i=n,…,2,1,0),右移1位得到新部分积,重复n+1 步, 最后一次不移位,得到[X·Y]补。 Yi+1与Yi为邻位,(Yi+1-Yi)不同

文档评论(0)

44422264 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档