定点补码一位乘法实现算法 用补×补直接求补.ppt

定点补码一位乘法实现算法 用补×补直接求补.ppt

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用[X]补×[Y补直接求[X×Y]补 讨论当相乘的两个数中有一个或二个为负数的情况 在讨论补码乘法运算时,对被乘数或部分积的处理上与原码乘 法有某些类似,差别仪表现在被乘数和部分积的符号位要和数 值一起参加运算。 若[Y]补=Y0YY2…Yn当Y0为1时,则有 Y=-1+∑Y×2 故有xXY=X×2Y×21-x 当Y为负值时,用补码乘计算[X×Y补,是用[X]补乘上[Y1补的数 值位,而不理[Y符号位上的1,乘完之后,在所得的乘积中再 咸X,即加一[X]补。 实现补码乘法的另一个方案是比较法,是由 BOOTH最早提出 的,这一方法的出发点是避免区分乘数符号的正负,而且让乘 数符号位也参加运算。技巧上表现在分解乘数的每一位上的1 为高一位的一个+1和本位上的一个-1: X×Y=X×(-1+∑Y×2)(逐项展开则得) =X×[Y0+Y1×21+Y2×22+.+Yn×2叮 =x×[-Y0+(Y1-Y1×2)+(Y2×21-Y2×22)+…,+(Yn×2m 1)-Yn×2) (合并相同幂次项得) =x×I(Y1-Y)+(Y2-Y1)×21+…+(Yn-Yn1)×2(n1)+(0 Yn)×2 =X×∑(1+1-Y1)×2 (写成累加求和的形式,得到实现补码乘运算的算法) 将上述公式展开,则每一次的部分积为 P1=[2(Yn+1-Yn)×X P2=2(P1+(Yn-Yn1)×X) P=[21(Pn1+(Yn1+2-Yn+)×X)补 Pn=2(Pn1+(Y2Y1)×X)补 Pa+=(Pn+(Y1-Y0)×X)补 则最终补码乘积为X*Y1补=Pn+1补 由上述公式可以看出,比较法是用乘数中每和邻的两位判断 如何求得每次的相加数。 每两位Y和Y1的取值有00,01,10,11四种组合,则它们的 差值分别为0,1,-1和0,非最后一次的部分积,分别为上 次部分积的12(右移一位)的值R,R+[Ⅺ补,R一[X社 (即R+L-Ⅺ])和R,但一定要注意:最后一次求出的部 分积即为最终乘积,不执行右移操作。 用此法计算乘积,需要乘数寄存器的最低一位之后再补充一位 Yn1,并使其初值为0,再增加对Y,和Yn两位进行译码的线路 以区分出Yn+1-Y4种不同的差值。对N位的数(不含符号位) 相乘,要计算N+1次部分积,并且不对最后一次部分积执行右移 操作。此时的加法器最好采用双符号位方案。

文档评论(0)

189****1620 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档