计算机组成原理第七讲_第1页
计算机组成原理第七讲_第2页
计算机组成原理第七讲_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机组成原理第七讲(除法 -原码恢复余数法) (科大罗克J- 露)定点除法运算:若干余数与除数加减,移位。例:0.10110 + 0.11111>商为:0.10110 余数为:0.10110 x 2-5实现除法关键:比较余数,除数绝对值大小,以决定上商。恢复余数。1. 原码恢复余数法算法:比较两数大小可用减法试探。2 X 余数 除数 =新余数(为正,够减,商为 1 ;为负,不够减,商为 0,恢复原余数)实例:X= -0.10110丫=0.11111 求X/Y,给出商数 Q和余数 R 。设置寄存器:A :被除数,余数B :除数 C:商初值: A=|X|=00.10110 ; B=|Y|=

2、00.11111 ; -B=11.00001 ;C=|Q|=0.00000分步运算过程:步骤判断条件操作A=00.10110(看作余数r0)C=0.00000(Cn=0 最末位)符号位 SA<01.01100A=乘 2r0(左移一位)A=01.01100 1 -B + 11.000010r1 = 00.01101(符号位为 0,表示够减,商为 1)C=0.00001->Q12 <00.11010 A=乘 2r1(左移一位)A=00.11010-B +11.000011r2 = 11.11011 (符号位 1 ,表示不够减,商为 0)C=0.00010->Q23. +B

3、+ 00.11111 (不够 减,恢复余数 )恢复余数 r2 = 00.110104< 0 1 . 1 0 1 00A=乘 2r2 (左移一位 )A=00.11010-B +11.000010r3 = 00.10101(符号位为 0,表示够减,商为 1)C=0.00101->Q35.<01.01010-BA=乘 2r3 (左移一位)A=01.01010+ 11.00001r4 =00.01011(符号位为 0,表示够减,商为 1)C=0.01011->Q46< 00.10110A=乘2r4 (左移一位)A=00.10110-B+ 11.000011r5 =11.1

4、0111 (符号位为 1 ,表示不够减,商为 0)C=0.10110->Q57+B00.11111恢复余数r6 =00.10110Q=-0.10110R= 0.10110 x 2-5; (余数同被除数符号)X/Y = -0.10110 + 0.10110 x 2-5/0.11111结果 X/Y 就等于商 Q 加上余数 R 再除以除数 Y;运算规则说明:1. A,B双符号位,X,丫绝对值,|X|小于|丫|。2. 运算结束后,余数乘以 2-n,余数与被除数同号。注解:这个算法是有缺陷的,不够减,就要恢复余数,需要 改进。用原码不恢复余数法。2.原码不恢复余数法(加减交替法)1 算法分析:总结

5、:看上例:原码恢复余数法 不恢复余数 第二步: 2r1 - B = r2 < 0; 第二 步:2r1 - B = r2& It; 0;第三步: r2 + B =r2 (恢复余数)第三步: 2r2+ B = r3 /直接把r2左移一位加 B第四步: 2r2 - B=r32r2 - B=2 ( r2 + B ) - B=2r2 + B = r3算法表达式: ri + 1 = 2ri + (1 - 2Qi) Yri 为正,则 Qi 为 1 ,第 i+1 步作 2ri - Y ;ri 为负,则 Qi 为 0,第 i+1 步作 2ri + Y ; 实例:X=0.10110 , Y=-0.11111

6、 求 X/Y ,给出商数 Q 和余数 R。 设置寄存器:A :被除数,余数 B :除数 C:商 初值: A=|X|=00.10110 ;B=|Y|=00.11111 ;-B=11.00001 ; C=|Q|=0.00000分步运算过程:步骤 判断条件 操作 A=00.10110( 看作余数 r0)C=0.00000(Cn=0 最末位)符号位 SA&It;01.01100A=乘 2r0(左移一位)A=01.01100-B+ 11.000010(为正)r1 = 00.01101 ( 符号位为 0,表示够减,商为 1)C=0.00001->Q12<00.11010 A=乘 2r1(左移一

7、位)A=00.11010-B +11.000011 (为负)r2 = 11.11011 (符号位 1,表示不够减,商为 0)C=0.00010->Q23. < 1 1 . 1 0 1 1 0A=乘 2r2 (左移一位 )A=11.101100(为正)为 0,表示够减,商为 1)4.A= 乘 2r3 (左移一位 )+B + 00.11111 r3 = 00.10101(符号位C=0.00101->Q3<01.01010A=01.01010-B+ 11.000010(为正)表示够减,商为 1)1 (为负)r5 =11.10111 (符号位为 1,表示不够减,商为 0)C=0

8、.10110->Q6r4 =00.01011(符号位为 0,C=0.01011->Q45<-00.10110 A= 乘 2r4 (左移一位 ) A=00.10110-B+ 11.00001+B00.11111恢复余数 r6 = 00.10110Q=-0.10110R= 0.10110 x 2-5; (余数同除数符号)X/Y = -0.10110 + 0.10110 x 2-5/-0.11111结果 X/Y 就等于商 Q 加上余数 R 再除以除数 Y;运算规则说明:1.A,B 双符号位, X,Y 绝对值, |X|<|Y| 。2. 根据余数的正负决定商值及下一步操作。3. 求 n 位商,作 n 步操作;若第 n 步余数为负,则第 n+1 步 恢复余数,不移位。3.补码不恢复余数法(加减交替法)问题: 1.如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论