计算机组成原理2_4.ppt

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成原理2_4

2.4 定点除法运算 2.4.1 原码除法算法原理 原码除法算法原理 [x]原=xf.xn-1…x1x0 [y]原=yf.yn-1…y1y0 [q]原= [x]原/[y]原 =(xf⊕yf)+(0.xn-1…x1x0/0.yn-1…y1y0) 手工计算过程 x=0.1001,y=0.1011 x/y:商=0.1101,余数=0 笔算特点 每次都是由心算来比较余数和除数的大小,余数大时,商1;余数小时,商0。第一次比较时,余数就是被除数。 每做一次减法,总是保持余数不动,而除数向右移一位。 商的符号单独处理。 算法改进 用“余数左移”替代“除数右移” 机器必须先作减法, 若余数为正,才知道够减;若余数为负,才知道不够减。 不够减时必须恢复原来的余数,以便再继续往下运算。这 种方法称为恢复余数法。 不恢复余数法,又称加减交替法。其特点是运算过程中如出现不够减,则不必恢复余数,根据余数符号,可以继续往下运算,因此步数固定,控制简单。 恢复余数法 设被除数 [X]原 = Xs.X1X2…Xn 除数 [Y]原 = Ys.Y1Y2…Yn 商 [Q]原 = Qs.Q1Q2…Qn 余数 [R]原 = Rs.R1R2…Rn 则它们之间有如下关系: [X]原 = [Y]原×[Q]原 + [R]原 其除法过程如下: 符号处理: Zs = Xs ⊕ Ys 余数符号保持与被除数一致 商的数值部分,变成两正数相除,即|X|/|Y|(|X||Y|),每一步除法通过2Ri-|Y|(i=0,1,…,n,R0=|X|)进行比较: 若2Ri-|Y| = Ri+1≥0,即余数为正,则商上“1”; 若2Ri-|Y| = Ri+10,即余数为负,则商上“0”,这时要恢复余数。 原码恢复余数法步骤 符号位单独处理 用被除数和除数的数值部分进行运算,被除数减去除数 若所得余数为正,表示够减,相应位上商为1,余数左移一位,减去除数;若所得余数为负,表示不够减,相应位上商为0,余数加上除数(即恢复余数),再左移一位,减去除数; 重复第3步,直到求得所要求的商的各位为止。 若最后一步余数为负数(不够减),则应恢复为正余数 例 X = -0.1001,Y= -0.1011,求[X/Y]原 解:[X]原 = 1.1001,[Y]原 = 1.1011 |X| = 0.1001,|Y| = 0.1011,[-|Y|]补 = 1.0101 运算过程如下: 所以,Qs = 1 ⊕ 1 = 0 [X/Y]原 = [Q]原 = 0.1101 余数R= -2-4R5 = -0 原码恢复余数除法运算过程 不恢复余数法(加减交替法) 在恢复余数法的运算过程中: 当余数ri0,执行的操作是左移一位→减除数,结果是2ri-y 当余数ri0时,执行的操作是加除数(恢复余数) →左移一位→减除数,结果是2(ri+y)-y。变换后得2(ri+y)-y=2ri+y。因此可以用“余数左移→加除数”替代 原码不恢复余数法步骤 符号位单独处理 用被除数和除数的数值部分进行运算,被除数减去除数 若所得余数为正,表示够减,相应位上商为1,余数左移一位,减去除数;若所得余数为负,表示不够减,相应位上商为0,将余数左移一位,加上除数 重复第3步,直到求得所要求的商的各位为止。 若最后一步余数为负数(不够减),则应恢复为正余数 例 X = -0.1011,Y=0.1101,求[X/Y]原 解: [X]原=1.1011,[Y]原=0.1101 [Y]补=0.1101,[-Y]补=1.0011 商的符号 Qs= 1 ⊕ 0 = 1 所以 [X/Y]原 = 1.1101 余数=-0.0111×2-4 原码不恢复余数除法运算过程 2.4.2 并行除法器 可控加法/减法(CAS)单元 不恢复余数的阵列除法器 被除数:x=0.x1x2x3x4x5x6 除数:y=0.y1y2y3 商:q=0.q1q2q3 余数:r=0.00r3r4r5r6 * * 原码除法原理 恢复余数法 不恢复余数法(加减交替法) 并行除法器 这步不做,不够减,商0 +)0 0. 1 0 1 1 +)1 1. 0 1 0 1 1 1. 1 1 1 0 0 0. 1 0 0 1 R1 恢复余数,+|Y| R0 = [X| +[-|Y|]补 +[-|Y|]补 +[-|Y|]补 得R1 0,商上0 得R2 0,商上1 余数左移一位 余数左移一位 操

文档评论(0)

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

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

1亿VIP精品文档

相关文档