CPU-1运算部件(8学时课件.ppt

上传人(卖家):晟晟文业 文档编号:4688033 上传时间:2023-01-01 格式:PPT 页数:58 大小:544.68KB
下载 相关 举报
CPU-1运算部件(8学时课件.ppt_第1页
第1页 / 共58页
CPU-1运算部件(8学时课件.ppt_第2页
第2页 / 共58页
CPU-1运算部件(8学时课件.ppt_第3页
第3页 / 共58页
CPU-1运算部件(8学时课件.ppt_第4页
第4页 / 共58页
CPU-1运算部件(8学时课件.ppt_第5页
第5页 / 共58页
点击查看更多>>
资源描述

1、 第三章第三章 CPUCPU子系统子系统运算部件运算部件 寄存器寄存器 寄存器寄存器控制部件控制部件运算器运算器控制器控制器本章主要讨论:本章主要讨论:运算器运算器 控制器控制器数据通路结构数据通路结构与外部的连接与外部的连接指令的执行过程指令的执行过程CPUCPU组成组成CPUCPU工作原理工作原理 CPUCPU组成原理组成原理 CPUCPU工作机制(工作机制(设计模型机设计模型机)CPUCPU子系统子系统运算器运算器组组成和运算成和运算方法方法控制器控制器原理原理定定点点乘乘法法定定点点除除法法浮浮点点运运算算组合逻辑组合逻辑控制器控制器微程序微程序控制器控制器基基本本思思想想控控制制器器

2、组组成成工工作作过过程程主机和外设主机和外设的信息交换的信息交换连接连接方式方式传送控传送控制方式制方式查查询询中中断断D DM MA A基基本本思思想想控控制制器器组组成成工工作作过过程程时序时序控制控制本章本章知识架构:知识架构:第一节第一节 运算器组织运算器组织 3.1.1 运算器的硬件组成运算器的硬件组成运算器运算器 移位器移位器 ALUALU输入选择器输入选择器 ALUALU部件部件 寄存器寄存器 并行加法器并行加法器 加法器输入选择器加法器输入选择器 全加器全加器 进位链进位链 串行串行并行并行分组分组选择操作数来源选择操作数来源选择操作数组合选择操作数组合独立结构独立结构小型存储

3、小型存储器结构器结构单口单口双口双口寄存器组寄存器组独立独立R R、双口双口RAMRAM用用多路选择器多路选择器作为作为ALUALU的的输入逻辑,输入逻辑,单口单口RAMRAM用用锁存器锁存器作为作为ALUALU的输入逻辑。的输入逻辑。3.1.2 运算器的组织结构运算器的组织结构1.带多路选择器的运算器带多路选择器的运算器移位器移位器ALU多路选择器多路选择器多路选择器多路选择器R0RnR0.Rn R0.Rn 内部总线(单向)内部总线(单向)特点:特点:R R各自独立;各自独立;可同时向可同时向ALUALU提供两个操作数;提供两个操作数;采用单向内总线。采用单向内总线。2.带输入锁存器的运算器

4、带输入锁存器的运算器特点:特点:单口单口RAMRAM不能同时向不能同时向ALUALU提提供两个操作数;供两个操作数;用锁存器暂存操作数;用锁存器暂存操作数;采用双向内总线。采用双向内总线。移位器移位器ALU锁存器锁存器锁存器锁存器内部总线(双向)内部总线(双向)R0Rn通用寄存器组(小型存储器)通用寄存器组(小型存储器)3.位片式运算器位片式运算器特点:特点:用双口用双口RAMRAM(两地址两地址端、两数据端)作通端、两数据端)作通用寄存器组,可同时用寄存器组,可同时提供数据;提供数据;用多路选择器作输入用多路选择器作输入逻辑,不需暂存操作逻辑,不需暂存操作数;数;ALUALU增加乘、除功能,

5、增加乘、除功能,用乘商寄存器存放乘用乘商寄存器存放乘数、乘积或商。数、乘积或商。例例.4.4位片运算器粗框位片运算器粗框移位器移位器ALU多路选择器多路选择器多路选择器多路选择器DO RAMDi B 地址地址 A 地址地址 CnDBDAG、P控制信息控制信息Cn+4乘商寄存器乘商寄存器444444444444 第二节第二节 运算方法运算方法3.2.1.1 补码加减法补码加减法数用补码表示,符号位参加运算。数用补码表示,符号位参加运算。实际操作能否只取决于操作码实际操作能否只取决于操作码?结果需不需修正?结果需不需修正?如何将减法转换为加法?如何将减法转换为加法?3.2.1 定点加减运算定点加减

6、运算1.基本关系式基本关系式(X+Y)补补 =X补补 +Y补补 (1)(X-Y)补补 =X补补 +(-Y)补补 (2)式(式(1):):操作码为操作码为“加加”时,两数直接相加。时,两数直接相加。3)X=3 Y=2 X补补=0 0011 Y补补=1 11100 0001(+1补码)补码)2)X=3 Y=2 X补补=1 1101 Y补补=1 11101 1011(5补码)补码)1)X=3 Y=2 X补补=0 0011 Y补补=0 00100 0101(+5补码)补码)4)X=3 Y=2 X补补=1 1101 Y补补=0 00101 1111(1补码)补码)例例.求求(X+Y)补补(X+Y)补补

7、=X补补 +Y补补 (1)(X-Y)补补 =X补补 +(-Y)补补 (2)式(式(2):):操作码为操作码为“减减”时,将减转换为加。时,将减转换为加。1)X=4 Y=5 X补补=0 0100 Y补补=1 1011(-Y)补补=0 01010 1001(+9补码)补码)2)X=4 Y=5 X补补=1 1100 Y补补=0 0101(-Y)补补=1 10111 0111(9补码)补码)例例.求求(X Y)补补Y补补 (Y)补补:将将Y Y补补变补变补不管不管Y Y补补为正或负,将其符号连同为正或负,将其符号连同尾数一起各位变反,末位加尾数一起各位变反,末位加1 1。即将减数变补后与被减数相加。即

8、将减数变补后与被减数相加。X补补=0 0100 Y补补=1 1011 X补补=1 1100 Y补补=0 0101注意:某数的注意:某数的补码表示补码表示与某数与某数变补变补的区别。的区别。例例.1 0101.1 0101原原 1 10111 1011补码表示补码表示1 00111 0011补补 0 11010 1101变补变补 0 01010 0101原原 0 01010 0101补码表示补码表示符号位不变;符号位不变;负数尾数改变,负数尾数改变,正数尾数不变。正数尾数不变。0 00110 0011补补 1 11011 1101变补变补符号位改变,符号位改变,尾数改变。尾数改变。补码的机器负数

9、补码的机器负数2.算法流程算法流程操作数用补码表示,操作数用补码表示,符号位参加运算符号位参加运算结果为补码表示,符结果为补码表示,符号位指示结果正负号位指示结果正负X补补+Y补补X补补+(-Y)补补ADDSUB3.逻辑实现逻辑实现A(X补补)B(Y补补)+AABB+B+B+1CPA A(1)控制信号控制信号加法器输入端:加法器输入端:+A+A:打开控制门,将打开控制门,将A A送送。+B+B:打开控制门,将打开控制门,将B B送送。+1+1:控制末位加控制末位加 1 1。+B+B:打开控制门,将打开控制门,将B B送送。加法器输出端:加法器输出端:A:打开控制门,将结打开控制门,将结 果送果

10、送A输入端。输入端。CPCPA A:将结果打入将结果打入A A。(2)补码加减运算器粗框补码加减运算器粗框3.2.1.2 溢出判断溢出判断在什么情况下可能产生溢出?在什么情况下可能产生溢出?例例.数数A A有有4 4位尾数,位尾数,1 1位符号位符号S SA A 数数B B有有4 4位尾数,位尾数,1 1位符号位符号S SB B 符号位参符号位参加运算加运算 结果符号结果符号S Sf f符号位进位符号位进位C Cf f尾数最高位进位尾数最高位进位C C正确正确0 00110 0010(1)A=3 B=2 3+2:0 0101 (2)A=10 B=7 10+7:0 10100 01111 000

11、1 正溢正溢正确正确负溢负溢正确正确正确正确(3)A=-3 B=-2-3+(-2):1 1011 1 11011 1110(4)A=-10 B=-7 -10+(-7):0 1111 1 01101 1001(5)A=6 B=-4 6+(-4):0 0010 0 01101 1100(6)A=-6 B=4 -6+4:1 1110 1 10100 0100(2)A=10 B=7 10+7:0 1010 0 01111 0001 (4)A=-10 B=-7 -10+(-7):0 1111 1 01101 10011.硬件判断逻辑一硬件判断逻辑一(SA、SB与与Sf的关系)的关系)溢出溢出=S SA

12、AS SB BS Sf fS SA AS Sf fS SB B2.硬件判断逻辑二硬件判断逻辑二(Cf与与C的关系)的关系)正确正确0 00110 0010(1)A=3 B=2 3+2:0 0101 (2)A=10 B=7 10+7:0 10100 01111 0001 正溢正溢正确正确负溢负溢正确正确正确正确(3)A=-3 B=-2-3+(-2):1 1011 1 11011 1110(4)A=-10 B=-7 -10+(-7):0 1111 1 01101 1001(5)A=6 B=-4 6+(-4):0 0010 0 01101 1100(6)A=-6 B=4 -6+4:1 1110 1

13、10100 0100CfCf=0=0C=0C=0CfCf=0=0C=1C=1CfCf=1=1C=1C=1CfCf=1=1C=0C=0CfCf=1=1C=1C=1CfCf=0=0C=0C=0111111(2)A=10 B=7 10+7:0 1010 0 01111 0001 (4)A=-10 B=-7 -10+(-7):0 1111 1 01101 10011.硬件判断逻辑一硬件判断逻辑一(SA、SB与与Sf的关系)的关系)溢出溢出=S SA AS SB BS Sf fS SA AS Sf fS SB B2.硬件判断逻辑二硬件判断逻辑二(Cf与与C的关系)的关系)溢出溢出=C Cf f C C3

14、.硬件判断逻辑三硬件判断逻辑三(双符号位(双符号位)(1)3+2:正确正确00 001100 001000 0101 (2)10+7:00 101000 011101 0001 正溢正溢正确正确负溢负溢正确正确正确正确(3)-3+(-2):11 0111 11 110111 1110(4)-10+(-7):10 1111 11 011011 1001(5)6+(-4):00 0010 00 011011 1100(6)-6+4:11 1110 11 101000 0100第一符号位第一符号位Sf1第二符号位第二符号位Sf2溢出溢出=S=Sf1f1 S Sf2f2(2)A=10 B=7 10+7

15、:0 1010 0 01111 0001 (4)A=-10 B=-7 -10+(-7):0 1111 1 01101 10011.硬件判断逻辑一硬件判断逻辑一(SA、SB与与Sf的关系)的关系)溢出溢出=S SA AS SB BS Sf fS SA AS Sf fS SB B2.硬件判断逻辑二硬件判断逻辑二(Cf与与C的关系)的关系)溢出溢出=C Cf f C C3.硬件判断逻辑三硬件判断逻辑三(双符号位(双符号位)3.2.1.3 移位操作移位操作逻辑移位逻辑移位 :数码位置变化,数值数码位置变化,数值不变不变。1.移位类型移位类型算术移位算术移位 1 0 0 0 1 1 1 1循环左移:循环

16、左移:0:数码位置变化,数值:数码位置变化,数值变化变化,符号位不变。符号位不变。1 0 0 1 1 1 1 算术左移:算术左移:1 0 0 1 1 1 1 10 1 1 1 1 0(-15)(-30)(1)单符号位)单符号位:0 01110 1110 (2)双符号位)双符号位:00 1110 00 01112.正数补码移位规则正数补码移位规则(3 3)移位规则)移位规则左移左移右移右移右移右移0 0111 0 0011 左移左移左移左移右移右移右移右移01 1100 00 1110 00 0111 数符不变数符不变(单:符号位不变;双:第一符号(单:符号位不变;双:第一符号位不变)。位不变)

17、。空位补空位补0(右移时第二符号位移至尾数最高位)。(右移时第二符号位移至尾数最高位)。(1)单符号位)单符号位:1 10111 0110 (2)双符号位)双符号位:10 1100 11 01103.负数补码移位规则负数补码移位规则(3 3)移位规则)移位规则左移左移右移右移右移右移1 1011 1 1101 左移左移右移右移右移右移11 0110 11 1011 数符不变数符不变(单:符号位不变;双:第一符号(单:符号位不变;双:第一符号位不变)。位不变)。左移空位补左移空位补0(第二符号位移至尾数最高位)。(第二符号位移至尾数最高位)。右移空位补右移空位补13.2.1.4 舍入方法舍入方法

18、1.0 0舍舍1 1入(原码、补码)入(原码、补码)0 00100原原 1 00101原原 1 11011补补 2.末位恒置末位恒置1 1(原码、补码)(原码、补码)0 00100原原 1 11011补补 1 00101原原 0 0010原原 1 0011原原 1 1110补补 0 0011原原 1 0011原原 1 1101补补 1 0011原原 1 1101补补 例例.保留保留4位尾数:位尾数:例例.保留保留4位尾数:位尾数:3.2.2 定点乘法运算定点乘法运算3.2.2.1 原码一位乘法原码一位乘法 每次用一位乘数去乘被乘数。每次用一位乘数去乘被乘数。1.1.算法分析算法分析乘法乘法 部

19、分积累加、移位。部分积累加、移位。例例.0.11011.10111.1011乘积乘积 P=X P=X Y Y积符积符 S SP P=S=SX X S SY YX原原Y原原(1 1)手算)手算 0.11010.1101 0.10110.1011 1101 1101 1101 1101 0000 0000 1101 1101 0.100011110.10001111上符号:上符号:1.100011111.10001111部分积部分积问题:问题:1 1)加数增多(由乘数位数决定)。)加数增多(由乘数位数决定)。2 2)加数的位数增多(与被乘数、乘)加数的位数增多(与被乘数、乘 数位数有关)。数位数有

20、关)。改进:将一次相加改为分步累加。改进:将一次相加改为分步累加。(2 2)分步乘法)分步乘法每次将一位乘数所对应的部分积与每次将一位乘数所对应的部分积与原部分积的累加和相加,并移位。原部分积的累加和相加,并移位。设置寄存器:设置寄存器:A A:存放存放部分积累加和部分积累加和、乘积高位乘积高位 B B:存放存放被乘数被乘数 C C:存放存放乘数乘数、乘积低位乘积低位 设置初值:设置初值:A=00.0000A=00.0000 B=X=00.1101 B=X=00.1101 C=Y=.1011 C=Y=.1011 步数步数 条件条件 操作操作 A C A C 00.0000 .10100.000

21、0 .1011 1 1 1)C Cn n=1=1+B+BC Cn n+00.1101+00.110100.00.11011101 0.11010.1101 0.1010.1011 1 1101 1101 1101 1101 0000 0000 1101 1101 0.100011110.10001111BC 1101 1101 00.00.011001101 1.10.101 1 0.11010.1101 0.100.101 11 12 2)C Cn n=1=1+B+B+00.1101+00.11010 01 1.0011001100.00.100110011111.1.10 0 0.1101

22、0.1101 0.10.10 01111 0.11010.1101 0.10110.1011 1101 1101 1101 1101 0000 0000 1101 1101 0.100011110.10001111BC3 3)C Cn n=0=0+0+0+00.0000+00.000000.00.1001100100.00.01000100111111.1 14 4)C Cn n=1=1+B+B+00.1101+00.11010 01 1.0001000100.00.1000100011111111X X原原Y Y原原 =1.10001111=1.10001111 2.算法流程算法流程0 A0

23、 A、X BX B、Y CY C、0 CR0 CRC Cn n=1 =1?CR=n CR=n?1/21/2(A+BA+B)A A,C C1/21/2(A+0A+0)A A,C C CR+1 CR CR+1 CRYYNN SxSx+SySy S SA A 3.3.运算规则运算规则(1 1)操作数、结果用原码表示;)操作数、结果用原码表示;(2 2)绝对值运算,符号单独处理;)绝对值运算,符号单独处理;(3 3)被乘数)被乘数(B)(B)、累加和累加和(A)(A)取双符号位;取双符号位;(4 4)乘数末位)乘数末位(C Cn n)为判断位,其状态决定为判断位,其状态决定 下步操作;下步操作;(5

24、5)作)作n n次循环(累加、右移)。次循环(累加、右移)。3.2.2.2 补码一位乘法补码一位乘法 1.1.算法分析算法分析 X X补补 =X=X0 0.X.X1 1X X2 2X Xn n(1 1)Y Y为正:为正:Y Y补补 =0.Y=0.Y1 1Y Y2 2Y Yn n (XY)(XY)补补 =X=X补补(0.Y(0.Y1 1Y Y2 2Y Yn n)(2 2)Y Y为负:为负:Y Y补补 =1.Y=1.Y1 1Y Y2 2Y Yn n (XY)(XY)补补 =X=X补补(0.Y(0.Y1 1Y Y2 2Y Yn n)+(-X)+(-X)补补(3 3)Y Y符号任意:符号任意:(XY)

25、(XY)补补 =X=X补补(0.Y(0.Y1 1Y Y2 2Y Yn n)+(-X)+(-X)补补Y Y0 0符号位符号位(4 4)展开为部分积的累加和形式:展开为部分积的累加和形式:(XY)(XY)补补 =X=X补补(0.Y(0.Y1 1Y Y2 2Y Yn n)+(-X)+(-X)补补Y Y0 0 =X=X补补(0.Y(0.Y1 1Y Y2 2Y Yn n)-X)-X补补Y Y0 0 =X=X补补(-Y(-Y0 0+2 Y2 Y1 1+2 2 Y Y2 2+2 2 Y Yn n)-1-1 -2-2 -n-n =X=X补补 -Y-Y0 0+(+(Y Y1 1-2 Y-2 Y1 1)+()+(

26、2 Y2 Y2 2-2 Y-2 Y2 2)+)+-1 -1 -1-1 -2 -2-(n-1)-n-(n-1)-n +(+(2 Y2 Yn n-2-2 Y Yn n)=X=X补补 (Y(Y1 1-Y-Y0 0)+2(Y)+2(Y2 2-Y-Y1 1)+2(Y)+2(Y3 3-Y-Y2 2)+)+-1 -2-1 -2 +2(0 -+2(0 -Y Yn n)-n-n +2(+2(0 0 -Y Yn n)-n-nY Yn+1n+1 =X=X补补 (Y Y1 1-Y-Y0 0)+2()+2(Y Y2 2-Y-Y1 1)+2()+2(Y Y3 3-Y-Y2 2)+)+-1 -2-1 -2 +2(+2(0

27、0 -Y Yn n)-n-nY Yn+1n+1比较法:用相邻两位乘数比较的结果决定比较法:用相邻两位乘数比较的结果决定 +X+X补补、-X-X补补或或+0+0。2.2.比较法比较法算法算法Y Yn n(高位高位)Y Yn+1n+1(低位低位)操作操作(A(A补补为部分积累加和为部分积累加和)0 00 00 10 11 01 01 1 1 1 1/2A1/2A补补 1/2(A1/2(A补补+X+X补补)1/2(A 1/2(A补补-X-X补补)1/2A 1/2A补补3.3.运算实例运算实例X=-0.1101,Y=-0.1011,X=-0.1101,Y=-0.1011,求求(XY)(XY)补补。初值

28、:初值:A=00.0000,B=XA=00.0000,B=X补补=11.0011,=11.0011,-B=(-X)-B=(-X)补补=00=00.1101,C=Y.1101,C=Y补补=1=1.0101.0101步数步数 条件条件 操作操作 A C A C 00.0000 1.01000.0000 1.0101 1 1 1)1 01 0-B-BC Cn n+00.1101+00.110100.00.1101110100.00.011001101 11.011.0101012 2)0 10 1+B+B+11.0011+11.001111.11.1001100111.11.110011001111

29、1.01.010103 3)1 01 0-B-B+00.1101+00.110100.00.1001100100.00.010001001111111.1.01014 4)0 10 1+B+B+11.0011+11.001111.11.0111011111.11.10111011111111111.01.00 0 C Cn+1n+1C Cn nC Cn+1n+15 5)1 01 0-B-B+00.1101+00.1101(XY)(XY)补补 =0.10001111=0.100011114 4)0 10 1+B+B+11.0011+11.001111.11.0111011111.11.10111

30、011111111111.01.05 5)1 01 0-B-B+00.1101+00.110100.00.1000100011111111修正修正(1)A(1)A、B B取双符号位,符号参加运算;取双符号位,符号参加运算;(2)C(2)C取单符号位,符号参加移位,以决定最后是否取单符号位,符号参加移位,以决定最后是否 修正;修正;(3)C(3)C末位设置附加位末位设置附加位C Cn+n+1 1,初值为初值为0 0,C Cn nC Cn+n+1 1组成判组成判 断位,决定运算操作断位,决定运算操作;(4)(4)作作n n步循环步循环,若需作第若需作第n+1n+1步步,则不移位则不移位,仅修正。仅

31、修正。4.4.运算规则运算规则1.0:-B修正修正0.1:+B修正修正0.0:不修正不修正1.1:不修正不修正 3.2.3 定点除法运算定点除法运算除法除法 若干余数与除数加减、移位。若干余数与除数加减、移位。例例.0.10110.0.101100.111110.111110.101100.10110 110111010.0.0 01 1 11111111110.111110.111110 00 00 01 1 1111111111 10101101010 01 1 1111111111 101110110 00 0.0000000000.0.0.商:商:0.101100.10110余数:余数

32、:0.101100.101102 2 5实现除法的关键:实现除法的关键:比较比较“余数余数”、除、除数数绝对值大小,以绝对值大小,以决定上商。决定上商。3.2.3.1 原码恢复余数法原码恢复余数法1.1.算法算法 比较两数大小可用减法试探。比较两数大小可用减法试探。2 2余数余数-除数除数=新余数新余数为正为正:够减够减,商商1 1。为负为负:不够减不够减,商商0,0,恢复原余数。恢复原余数。2.2.实例实例X=-0.10110X=-0.10110,Y=0.11111Y=0.11111,求,求X/YX/Y,给出商给出商Q Q和余数和余数R R设置:设置:A A:被除数、余数,被除数、余数,B

33、B:除数,除数,C C:商:商初值:初值:A=X=00.10110A=X=00.10110 B=Y=00.11111 B=Y=00.11111 C=Q=0.00000 C=Q=0.00000-B=11.00001-B=11.00001步数步数 条件条件 操作操作 A C A C 00.10110 0.0000000.10110 0.00000 1 1)0 0-B-B 01.0110001.01100+11.00001+11.0000100.0110100.011010.00000.00001 12 2)1 1-B-B00.1101000.11010+11.00001+11.0000111.11

34、01111.110110.0000.00010103 3)恢复余数恢复余数+B+B+00.11111+00.1111100.1101000.1101001.1010001.101000.000.001011014 4)0 0-B-B+11.00001+11.0000100.1010100.10101C Cn nS SA AQ Q1 1 Q Q2 2 Q Q3 3 r r0 02r2r0 0r r1 12r2r1 1r r22r r2 22r2r2 2r r3 3步数步数 条件条件 操作操作 A C A C 00.10101 0.0000.10101 0.00101101 5 5)0 0-B-B

35、 01.0101001.01010+11.00001+11.0000100.0101100.010110.00.0101110116 6)1 1-B-B00.1011000.10110+11.00001+11.0000111.1011111.101110.0.10110101107 7)恢复余数恢复余数+B+B+00.11111+00.1111100.1011000.10110Q=-0.10110Q=-0.10110C Cn nQ Q4 4 Q Q5 5 Q Q3 3 r r3 32r2r3 3r r4 42r2r4 4r r55r r5 5R=0.10110R=0.101102 2-5-5X

36、/Y=-0.10110+X/Y=-0.10110+-0.10110-0.101102 2-5-5 0.11111 0.111113.3.说明说明(1 1)A A、B B双符号位,双符号位,X X、Y Y绝对值,绝对值,X X 小于小于 Y Y。(2 2)运算结束后,余数乘以运算结束后,余数乘以2 2,与被除数同号。,与被除数同号。-n3.2.3.2 原码不恢复余数法(加减交替法)原码不恢复余数法(加减交替法)1.1.算法分析算法分析第二步第二步:2 2r r1 1-B=-B=r r2 200第三步第三步:r r2 2+B=+B=r r2(2(恢复余数恢复余数)第四步第四步:2 2r r2 2-

37、B=-B=r r3 32 2r r2 2-B=2(-B=2(r r2 2+B)-B+B)-B =2 =2r r2 2+B=+B=r r3 3 第二步第二步:2 2r r1 1-B=-B=r r2 200第三步第三步:2:2r r2 2+B=+B=r r3 3 (不恢复余数不恢复余数)2.2.算法算法 r ri+1i+1=2=2r ri i+(1-2Q+(1-2Qi i)Y)Yr ri i为为正,正,则则Q Qi i为为1 1,第第i+1i+1步作步作2 2r ri i-Y-Y;r ri i为为负,负,则则Q Qi i为为0 0,第第i+1i+1步作步作2 2r ri i+Y+Y。3.3.实例实

38、例X=0.10110X=0.10110,Y=-0.11111Y=-0.11111,求,求X/YX/Y,给出商给出商Q Q和余数和余数R R。初值:初值:A=X=00.10110A=X=00.10110 B=Y=00.11111 B=Y=00.11111 C=Q=0.00000 C=Q=0.00000-B=11.00001-B=11.00001步数步数 条件条件 操作操作 A C A C 00.10110 0.0000000.10110 0.00000 1 1)为正为正-B-B 01.0110001.01100+11.00001+11.0000100.0110100.011010.00000.0

39、0001 12 2)为负为负 -B-B00.1101000.11010+11.00001+11.0000111.1101111.110110.0000.00010103 3)+B+B+00.11111+00.1111111.1011011.101100.000.00101101为正为正00.1010100.10101C Cn n r rQ Q1 1 Q Q2 2 Q Q3 3 r r0 02r2r0 0r r1 12r2r1 1r r2 22r2r2 2r r3 34 4)为正为正-B-B 01.0101001.01010+11.00001+11.0000100.0101100.010110.

40、00.010111011Q Q4 4 2r2r3 3r r4 4步数步数 条件条件 操作操作 A C A C 00.01011 0.000.01011 0.010111011 6 6)为负为负 恢复余数恢复余数+B+B+00.11111+00.1111100.1011000.10110Q=-0.10110Q=-0.10110C Cn nQ Q4 4 r r4 45 5)为正为正-B-B 00.1011000.10110+11.00001+11.0000111.1011111.101110.0.1011010110Q Q5 5 2r2r4 4r r55r r5 5R=0.10110R=0.101

41、102 2-5-5X/Y=-0.10110+X/Y=-0.10110+0.101100.101102 2-5-5-0.11111-0.11111 4.4.运算规则运算规则(1 1)A A、B B取双符号位,取双符号位,X X、Y Y取绝对值运算,取绝对值运算,X Y X Y。(2 2)根据余数的正负决定商值及下一步操作。根据余数的正负决定商值及下一步操作。(3 3)求)求n n位商,作位商,作n n步操作;若第步操作;若第n n步余数为负,则第步余数为负,则第n+1n+1步恢复余数,不移位。步恢复余数,不移位。3.2.3.3 补码不恢复余数法(加减交替法)补码不恢复余数法(加减交替法)如何判断

42、是否够减?如何判断是否够减?如何上商?如何上商?如何确定商符?如何确定商符?1.1.判够减判够减(1)(1)同号相除同号相除4 74 77 47 4-4-7-4-7-7-4-7-41 1-4 7-4 7-7 4-7 44-74-77-47-40 01 10 0-4-43 3-7-7-3-3-(-4)-(-4)-3-3-(-7)-(-7)3 3够减够减不够减不够减够减够减不够减不够减够减:够减:r与与X、Y同号;同号;不够减:不够减:r与与X、Y异号。异号。(2)(2)异号相除异号相除 1 10 0 1 1 0 0+(-4)+(-4)3 3+(-7)+(-7)-3-3 +4+4-3-3 +7+7

43、 3 3够减够减够减够减不够减不够减不够减不够减够减:够减:r与与X同号同号,与与Y异号;异号;不够减:不够减:r与与X异号异号,与与Y同号。同号。(3 3)判断规则)判断规则同号:作同号:作X X补补-Y-Y补补X X补补Y Y补补够减够减:r r补补与与Y Y补补同号同号不够减不够减:r r补补与与Y Y补补异号异号异号:作异号:作X X补补+Y+Y补补够减够减:r r补补与与Y Y补补异号异号不够减不够减:r r补补与与Y Y补补同号同号2.2.求商值求商值X X补补Y Y补补同号:商为正同号:商为正异号:商为负异号:商为负够减商够减商1 1不够减商不够减商0 0够减商够减商0 0不够减

44、商不够减商1 1(r r、Y Y同号同号)(r r、Y Y异号异号)(r r、Y Y异号异号)(r r、Y Y同号同号)够减够减商商1 1不够减商不够减商0 0够减商够减商0 0不够减不够减商商1 1(r r、Y Y同号同号)(r r、Y Y异号异号)(r r、Y Y异号异号)(r r、Y Y同号同号)(r r、Y Y同号同号)(r r、Y Y异号异号)(r r、Y Y异号异号)(r r、Y Y同号同号)够减够减商商1 1不够减不够减商商0 0够减够减商商0 0不够减不够减商商1 1上商规则:上商规则:Q Qi i=Sr=Sri iS SY Y余数与除数同号商余数与除数同号商1 1,异号商,异

45、号商0 0。3.3.算法算法 (r ri+1i+1)补补=2=2r ri i补补+(1-2Q+(1-2Qi i补补)Y)Y补补r ri i补补与与Y Y补补同号,同号,则则Q Qi i补补为为1 1,第第i+1i+1步作步作2 2r ri i补补-Y-Y补补;r ri i补补与与Y Y补补异号,异号,则则Q Qi i补补为为0 0,第第i+1i+1步作步作2 2r ri i补补+Y+Y补补。4.4.求商符求商符令令X X补补 =r r0 0补补r r0 0补补与与Y Y补补同号:同号:Q Q0 0补补=1=1异号:异号:Q Q0 0补补=0=0与实际商与实际商符相反符相反商符商符5.5.商的校

46、正商的校正X X补补Y Y补补=(-1+2 +2 =(-1+2 +2 QiQi补补)+)+2 2 r rn n补补Y Y补补-n-in-1i=0-n商商余数余数真商真商=假商假商+1.00001+1.00001=Q=Q0 0.Q.Q1 1Q Q2 2QQn-1n-1求求n-1n-1位商位商(假商假商)X X补补Y Y补补=(-1+2 +2 =(-1+2 +2 QiQi补补)+)+2 2 r rn n补补Y Y补补-n-in-1i=0-n商商余数余数(1)2 (1)2 QiQi补补n-1i=0-i(2)2(2)2-n第第n n位商位商(末位商末位商)恒置恒置1 1(3)-1(3)-1商符变反商符

47、变反n位位(4)(4)余数求至余数求至rnrn6.6.实例实例X=0.10110X=0.10110,Y=-0.11111Y=-0.11111,求,求X/YX/Y,给出商给出商Q Q和余数和余数R R。初值:初值:A=XA=X补补=00.10110=00.10110 B=YB=Y补补=11.00001 =11.00001 C=QC=Q补补=0.00000=0.00000-B=00.11111-B=00.11111步数步数 条件条件 操作操作 A C A C 00.10110 0.000000.10110 0.0000 1 1)异号异号+B+B 01.0110001.01100+11.00001+

48、11.0000100.0110100.01101 0.000.0000002 2)同号同号 +B+B00.1101000.11010+11.00001+11.0000111.1101111.11011 0.00.0001001C Cn n-1-1r r、Y YQ Q1 1 Q Q2 2 r r0 02r2r0 0r r1 12r2r1 1r r2 2求商符求商符Q Q0 0 异号异号0 0 5 5)+B+B+11.00001+11.0000100.1011000.1011011.1011111.10111步数步数 条件条件 操作操作 A C A C 11.11011 0.011.11011 0

49、.0001001 3 3)异号异号-B-B 11.1011011.10110+00.11111+00.1111100.1010100.10101 0.0.001000104 4)异号异号 +B+B01.0101001.01010+11.00001+11.0000100.0101100.01011 0.01000.0100C Cn n-1-1r r、Y YQ Q3 3 Q Q2 2 r r2 22r2r2 2r r3 32r2r3 3r r4 42r2r4 4r r5 5假商假商=0.0100=0.0100Q Q4 4 真商真商=0.0100+1.00001=1.01001=0.0100+1.0

50、0001=1.01001Q=-0.10111 R=-0.01001Q=-0.10111 R=-0.010012 2X/Y=-0.10111+X/Y=-0.10111+-0.01001-0.010012 2-5-5-0.11111-0.11111-5 5 7.7.运算规则运算规则(1 1)A A、B B取双符号位,符号参加运算,并且取双符号位,符号参加运算,并且 X Y X BBE E,则,则B BE E+1 B+1 BE E,B BM M,直到直到B BE E=A=AE E1.10101.1010(2)0.0101(2)0.0101 +0.1101 +0.1101A AM M+B+BM M A

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(CPU-1运算部件(8学时课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|