组成原理第4章-2.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章 运算方法和运算器 4.2 定点数的乘法运算及实现 实现乘除法运算,可以有三种方式: 用软件实现。通过编制一段子程序来实现乘除运算。这种方式运算速度较慢,但硬件设计简单。 用硬件乘法器和除法器实现。这种方式相对软件实现方法,运算速度提高,但硬件设计也相对复杂。 用高速的阵列乘法器和阵列除法器来实现。乘除法指令实现的硬件基础是专用的、并行运算的阵列乘法器和阵列除法器。这种方式,硬件相当复杂,但牺牲硬件代价,赢得了速度。 一、原码乘法算法及实现 1、手工乘法算法 手工计算1011×1101,步骤: 手工算法是:对应每一位乘数求得一项位积,并将位积逐位左移,然后将所有的位积一次相加,得到最后的乘积。 乘法的机器算法:从乘数的最低位开始,每次根据乘数位得到其位积,乘数位为0,位积为0,乘数位为1,则位积为被乘数;用本次位积左移一位加上原部分积,得新部分积;初始部分积为0。 2、原码一位乘法 假设[X]原=XS X1 X2 ……Xn , [Y]原=YS Y1 Y2 ……Yn , P=X·Y,PS是积的符号: 符号位单独处理?? Ps=Xs ⊕ Ys 绝对值进行数值运算?? |P|=|X|*|Y| 二、补码乘法及实现 1、补码一位乘法——校正法 假设[X]补 = X0 .X1……Xn ,[Y]补 = Y0 .Y1……Yn ,则有: [X·Y]补 = [X]补·(0.Y1……Yn)+ Y0·[-X]补 证明如下: 当被乘数X的符号任意,Y为正数时: 根据补码定义有: [X]补 =2 + X = 2n+1+ X (mod 2) [Y]补 =Y 则:[X]补·[Y]补 =(2n+1+ X)·Y = 2n+1·Y + X·Y = 2 n+1·(0 .Y1……Yn)+ X·Y = 2·(Y1……Yn)+ X·Y = 2 + X·Y (mod 2)= [X·Y]补 即:Y 0 时,[X·Y]补 = [X]补·[Y]补 =[X]补·(0.Y1……Yn) 当被乘数X的符号任意,Y为负数时: [Y]补 = 2 + Y = 1 .Y1……Yn则:Y = [Y]补 – 2 = 0.Y1……Yn -1 [X·Y]补 = [ X·0.Y1……Yn –X] 补 = [ X·0.Y1……Yn ] 补 +[–X] 补 因为0.Y1……Yn 0,所以:[ X·0.Y1……Yn ] 补 =[X]补·(0.Y1……Yn) 所以:Y0时,[X·Y]补 =[X]补·(0.Y1……Yn)+ [-X]补 2、补码一位乘法——Booth算法 做出如下推导 : [X·Y]补 = [X]补·(0.Y1……Yn)+ Y0·[-X]补 = [X]补·(Y1·2-1 + Y2·2-2 + ……+ Yn·2-n -Y0) = [X]补·[Y1·(20 - 2-1)+ Y2·(2-1 - 2-2)+ ……+ Yn·(2-n+1 - 2-n)-Y0·20] = [X]补·[Y1·20 - Y1·2-1 + Y2·2-1 - Y2·2-2 + ……+ Yn·2-n+1 - Yn·2-n -Y0·20] = [X]补·[(Y1-Y0)·20 +(Y2- Y1)·2-1 +(Y3- Y2)·2-2 + ……+ (Yn- Yn-1)·2-n+1 - Yn·2-n] = [X]补·[(Y1-Y0)·20 +(Y2- Y1)·2-1 +(Y3- Y2)·2-2 + ……+ (Yn- Yn-1)·2-n+1 +(Yn+1 - Yn)·2-n] = [X]补·(a0·20 + a1·2-1 + a2·2-2 + ……+ an-1·2-n+1 + an·2-n) 其中,将乘数Y的补码在最末位添加一位附加位Yn+1(初始为0),ai= Yi+1- Yi ,i=0,1,……,n-1,n。 被乘数X和乘数Y均以补码的形式参加乘法运算,运算的结果是积的补码 部分积和被乘数X采用双符号位,乘数Y采用单符号位。 [Y]补后添加附加位Yn+1初值为0(Yn Yn+1判断操作) 右移时遵循补码的移位规则 累加右移n次,最后累加不右移 3、Booth乘法的硬件实现 三、阵列乘法器 1、绝对值阵列乘法器 2、补码阵列乘法器 原码的阵列乘法器 在绝对值阵列乘法器的基础上,添加一个异或门,以产生积的原码的符号位。 补码的阵列乘法器, 先通过一个补码求绝对值的逻辑电路变为绝对值后,送入绝对值阵列乘法器,运算得到积的绝对值,然后再通过一个绝对值求补码的逻辑电路,根据积的符号求出积的补码形式。(例10001) 4.3 定点数除法运算及实现 一、原码除法及实现 1、原码除法算法 手工除法算法 原码恢复余数算法 假设[X]原=XS .X1 X2 ……Xn ,[Y]原

文档评论(0)

awang118 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档