运算器和运算方法ppt课件_第1页
运算器和运算方法ppt课件_第2页
运算器和运算方法ppt课件_第3页
运算器和运算方法ppt课件_第4页
运算器和运算方法ppt课件_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章第二章 运算器和运算方法运算器和运算方法 本章需处理的关键问题:本章需处理的关键问题: 如何以加法器为根底,实现各种如何以加法器为根底,实现各种运算处置。运算处置。处理思绪:处理思绪: 复杂运算复杂运算四那么运四那么运算算加法运算加法运算处理方法:处理方法: 在加法器的根底上,添加移位传送在加法器的根底上,添加移位传送功能,并选择输入控制条件。功能,并选择输入控制条件。加法单元加法单元 i i Ai Bi Ci-1Ciii本位操作数本位操作数 低位进位低位进位本位进位本位进位本位和本位和 第一节第一节 算术逻辑运算部件算术逻辑运算部件2.1.1 加法单元加法单元1. 加法单元的输入和输出

2、加法单元的输入和输出一个输入为一个输入为1时,时, i为为1,Ci为为0;两个输入为两个输入为1时,时, i为为0,Ci为为1;三个输入为三个输入为1时,时, i为为1,Ci为为1。2. 全加器全加器 1逻辑一逻辑一i = (Ai + Bi) + Ci-1i = (Ai + Bi) + Ci-1 Ci = AiBi + (Ai + Bi)Ci- Ci = AiBi + (Ai + Bi)Ci-1 1CiiiAi Bi Ci-1 2逻辑二逻辑二i = (Ai + Bi) + Ci-1i = (Ai + Bi) + Ci-1 Ci = Ai + Bi + (Ai + Ci = Ai + Bi +

3、(Ai + Bi)Ci-1Bi)Ci-1CiiiAi Bi Ci-1Ai Bi2.1.2 并行加法器与进位链逻辑并行加法器与进位链逻辑1.并行加法器并行加法器1特点:各位同时相加。特点:各位同时相加。例例. 8位数相加。位数相加。8 8 772211A8 B8 A7 B7 A2 B2 A1 B1 C02影响速度的主要要素影响速度的主要要素 存在着进位信号的传送。存在着进位信号的传送。1 1 1 10 0 0 011111100002. 并行加法器的进位链并行加法器的进位链1进位链的根本逻辑关系进位链的根本逻辑关系所以所以 Ci = Gi + Pi Ci-1进位产生函数进位产生函数进位传送函数进

4、位传送函数进位条件进位条件本地进位、绝对进位本地进位、绝对进位条件进位、传送进位条件进位、传送进位 Ci = AiBi + (Ai + Bi)Ci-1 = AiBi + (Ai + Bi)Ci-1 或或 Ci = AiBi + (Ai + Bi)Ci-1令令 Gi = AiBi Pi = Ai + Bi = Ai + Bi = Ai + Bi 2串行进位串行进位 特点:进位信号逐位构成。特点:进位信号逐位构成。 设设n位加法器位加法器 1逻辑式逻辑式C1 = G1 + P1C0C2 = G2 + P2C1Cn = Gn + PnCn-12构造举例构造举例C2 G2 P2 C1 G1 P1 C0

5、Gi PiAi Bi Ai Bi3并行进位并行进位 特点:各位进位信号同时构成。特点:各位进位信号同时构成。 设设n位加法器位加法器 1逻辑式逻辑式C1 = G1 + P1C0C2 = G2 + P2C1 = G2 + P2G1 + P2P1C0 Cn = Gn + PnCn-1 = Gn + PnGn-1 + + PnPn-1P2P1C0 n + 1 项项 2构造举例构造举例G2 P2 G1 P1C0C2 C1Ai BiGiPiAi Bi4组内并行、组间并行组内并行、组间并行 设设16位加法器,位加法器,4位一组,分为位一组,分为4组:组:4位位4位位4位位4位位 第第4组组 第第3组组 第

6、第2组组 第第1组组C16 C13 C12 C9 C8 C5 C4 C1C0C16 C12 C8 C4分级同时进位分级同时进位 1第第1组进位逻辑式组进位逻辑式 组内:组内: C1 = G1 + P1C0 C2 = G2 + P2G1 + P2P1C0 C3 = G3 + P3G2 + P3P2G1 + P3P2P1C0 组间:组间: C4 = G4 + P4G3 + P4P3G2 + P4P3P2G1 + P4P3P2P1C0GIPI所以所以 CI = GI + PIC0 2第第2组进位逻辑式组进位逻辑式 组内:组内: C5 = G5 + P5CI C6 = G6 + P6G5 + P6P5

7、CI C7 = G7 + P7G6 + P7P6G5 + P7P6P5CI 组间:组间: C8 = G8 + P8G7 + P8P7G6 + P8P7P6G5 + P8P7P6P5CIGP所以所以 C = G + PCI 3第第3组进位逻辑式组进位逻辑式 组内:组内: C9 = G9 + P9C C10 = G10 + P10G9 + P10P9C C11 = G11 + P11G10 + P11P10G9 + P11P10P9C 组间:组间: C12 = G12 + P12G11 + P12P11G10 + P12P11P10G9 + P12P11P10P9CGP所以所以 C = G + P

8、 C 4第第4组进位逻辑式组进位逻辑式 组内:组内: C13 = G13 + P13C C14 = G14 + P14G13 + P14P13C C15 = G15 + P15G14 + P15P14G13 + P15P14P13C 组间:组间: C16 = G16 + P16G15 + P16P15G14 + P16P15P14G13 + P16P15P14P13CGP所以所以 C = G + PC 5各组间进位逻辑各组间进位逻辑CI = GI + PIC0C = G + PCIC = G + P CC = G + PC = G + PGI + PPIC0 = G + P G + P PGI

9、 + P PPIC0 = G + P G + PP G + P P PGI + PP PPIC0 6构造表示构造表示4 14 1 8 58 5 12 912 9 16 1316 13 组间进位链组间进位链A8. . . . A5 B8 . . . . B5A4 . . . . A1 B4 . . . . B1A12 . . . . A9 B12 . . . . B9A16 . . . . A13 B16 . . . . B13CoCG P G P G P GI PI C3 1C15 13 C11 9 C7 5 C C CI 7进位传送过程进位传送过程Ai、Bi、C0A8. . . . A5 B

10、8 . . . . B5A4 . . . . A1 B4 . . . . B1A12 . . . . A9 B12 . . . . B9A16 . . . . A13 B16 . . . . B13CoG、P.GI、PI、G P G P G P GI PI C3 1C C C CI C、C、C、CI C15 13 C11 9 C7 5 C15 13、C11 9、C7 5 C3 1学习要求:学习要求: 能写出任一进位的串、并、分组逻辑式。能写出任一进位的串、并、分组逻辑式。 例例. 知操作数知操作数Ai、Bi,初始进位,初始进位C0。试。试写出写出C6的逻辑式。的逻辑式。串行进位:串行进位:C6

11、 =并行进位:并行进位:C6 =分级同时进位:分级同时进位:C6 = G6+P6C5G6+P6G5+P6P5G4+.+P6P5P1C0G6+P6G5+P6P5CICI=GI+PIC0G6+P6C5G6+P6G5+P6P5G4+.G6+P6G5+P6P5G4+.G6+P6G5+P6P5CIGI=G4+P4G3+P4P3G2+P4P3P2G1PI=P4P3P2P1Gi=AiBi Pi=Ai Bi2.1.3 ALU部件部件 加法器加法器 选择器选择器 选择器选择器控制控制信号信号控制控制信号信号操作数操作数操作数操作数输入组合输入组合输入组合输入组合ALU 选择器选择器 选择器选择器操作数操作数操作

12、数操作数 以以SN74181芯片芯片4位片位片ALU为例。为例。 1. 组成组成 1一位逻辑一位逻辑 1位加法器求和、进位位加法器求和、进位1位选择器位选择器1对对 1个公共控制门个公共控制门4位共用位共用Ci S3 S2 Bi S1 S0 Ai FiM Ci-1xiYiCi S3 S2 Bi S1 S0 Ai FiM Ci-1XiYi输入端:输入端:操作数操作数Ai、Bi低位进位低位进位Ci-1 1 1 0 0 控制信号控制信号M控制产生控制产生GiGi、PiPi控制构成多种输入组合控制构成多种输入组合作逻辑运算作逻辑运算作算术运算作算术运算控制信号控制信号S3S2S1S0 Fi1011输入

13、端:输入端:操作数操作数Ai、Bi低位进位低位进位Ci-1 Ci 01FiCi S3 S2 Bi S1 S0 Ai M Ci-1XiYiS3S2 S3S2 输出输出Xi S1S0 Xi S1S0 输出输出Yi Yi 0000010110101111 1 1Ai+BiAi+Bi0000010110101111 Ai Ai AiBi AiBi AiBi AiBiAi+BiAi+Bi Ai AiAi+BiAi+Bi AiBi AiBi 0 0PiGi00100Ai 2多位逻辑多位逻辑 见教材见教材P49:4位全加器位全加器 4位并行进位链位并行进位链 4位选择器位选择器 1个控制门个控制门 原始进位

14、原始进位 Cn 进位输出进位输出 Cn+4 G、P 构成组间串行进构成组间串行进位位 构成组间并行进构成组间并行进位位Ci S3 S2 Bi S1 S0 Ai FiM Ci-1XiYi2. 运算功能运算功能16种算术运算功能,种算术运算功能,16种逻辑运算功能种逻辑运算功能列于表列于表2-5P50。例例1. S3S2S1S0 Xi Yi FM=1FM=0 0 0 0 0 1 AiCi S3 S2 Bi S1 S0 Ai FiM Ci-1xiYi00001Ai10110101Ci-1Ci S3 S2 Bi S1 S0 Ai FiM Ci-1XiYi例例1. S3S2S1S0 Xi Yi FM=1

15、FM=0 0 0 0 0 1 AiM=1:Fi=Xi Yi 1=1 Ai 1=Ai 1=Ai 所以所以 F = A M=0:Fi=1 Ai Ci-1=1 Ai Ci-1 所以所以 F = A加全加全1 = A减减1A减减1 ACi S3 S2 Bi S1 S0 Ai FiM Ci-1XiYi例例2. S3S2S1S0 Xi Yi F(M=1) F(M=0) 1 0 0 1 Ai+Bi AiBiCi S3 S2 Bi S1 S0 Ai FiM Ci-1xiYi1001Ai+BiAiBi10110101Ci-1Ci S3 S2 Bi S1 S0 Ai FiM Ci-1XiYi例例2. S3S2S1

16、S0 Xi Yi F(M=1) F(M=0) 1 0 0 1 Ai+Bi AiBiM=1:Fi=Ai + Bi AiBi 1=Ai Bi 1=Ai Bi 所以所以 F = A BA B 所以所以 F = A加加BM=0:Fi=Ai+Bi AiBi Ci-1=Ai Bi Ci-1 = Ai Bi Ci-1 A加加B 3. 进位逻辑进位逻辑1组间串行组间串行16 8C1216 8C816 8C416 8C0C16Cn+4 CnCn+4 Cn2组间并行组间并行 17 15874181CIII 17 15874181CII 17 15874181CI 17 15874181C074182并行进位链并行

17、进位链GIPIP G 第二节第二节 运算器组织运算器组织 独立构造独立构造小型存储小型存储器构造器构造单口单口双口双口存放器组存放器组独立独立R R、双口、双口RAMRAM用多路选择器作为用多路选择器作为ALUALU的的输入逻辑,输入逻辑,单口单口RAMRAM用锁存器作为用锁存器作为ALUALU的输入逻辑。的输入逻辑。2.2.1 带多路选择器的运算器带多路选择器的运算器移位器移位器ALU多路选择器多路选择器多路选择器多路选择器R0RnR0. . . Rn R0. . . Rn 内部总线单向内部总线单向特点:特点:R R各自独立;各自独立;可同时向可同时向ALUALU提供两个操作数;提供两个操作

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

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

20、法?如何将减法转换为加法?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补码补码例例.

21、 求求(X+Y)补补 ( X + Y )补补 = 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补为正或负,将其符号连补为正或负,将其符号连同尾数一同各位变反,末位加同尾数一同

22、各位变反,末位加1 1。即将减数变补后与被减数相加。即将减数变补后与被减数相加。 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变补变补例例. 1 0101. 1 0101原原 1 1 10111011 0 0101 0 0101原原 0 01010 0101补码表示补码表示符号位不变;符号位不变; 0 0101 0 0101原原 0 01010

23、 0101 1 0101 1 0101原原 1 1 10111011 0 0101 0 0101原原 0 01010 0101负数尾数改动,负数尾数改动,正数尾数不变。正数尾数不变。0 00110 0011补补 1 11011 11011 00111 0011补补 0 11010 11010 00110 0011补补 1 11011 11011 00111 0011补补 0 11010 11010 00110 0011补补 1 11011 1101变补变补符号位改动,符号位改动,尾数改动。尾数改动。补码的机器负数补码的机器负数2. 算法流程算法流程操作数用补码表示,操作数用补码表示,符号位参与

24、运算符号位参与运算结果为补码表示,符结果为补码表示,符号位指示结果正负号位指示结果正负X补补+Y补补X补补+(-Y)补补ADDSUB3. 逻辑实现逻辑实现A(X补补)B(Y补补)+AABB+B+B+1CPA A1控制信号控制信号加法器输入端:加法器输入端:+A+A:翻开控制门,将:翻开控制门,将A A送送 。+B+B:翻开控制门,将:翻开控制门,将B B送送 。+1+1:控制末位加:控制末位加 1 1 。+B+B:翻开控制门,将:翻开控制门,将B B送送 。加法器输出端:加法器输出端: A:翻开控制门,将结:翻开控制门,将结 果送果送A输入端。输入端。CPACPA:将结果打入:将结果打入A A

25、。2补码加减运算器粗框补码加减运算器粗框2.3.2 溢出判别溢出判别在什么情况下能够产生溢出?在什么情况下能够产生溢出?例例. .数数A A有有4 4位尾数,位尾数,1 1位符号位符号SASA 数数B B有有4 4位尾数,位尾数,1 1位符号位符号SB SB 符号位参符号位参与运算与运算 结果符号结果符号SfSf符号位进位符号位进位CfCf尾数最高位进位尾数最高位进位C C正确正确0 00110 00101A=3 B=2 3+2:0 0101 2A=10 B=7 10+7:0 10100 01111 0001 正溢正溢正确正确负溢负溢正确正确正确正确3A= -3 B= -2-3+(-2):1

26、1011 1 11011 11104A= -10 B= -7 -10+(-7):0 1111 1 01101 10015A=6 B= -4 6+(-4):0 0010 0 01101 11006A= -6 B=4 -6+4:1 1110 1 10100 01002A=10 B=7 10+7 :0 1010 0 01111 0001 4A= -10 B= -7 -10+(-7):0 1111 1 01101 10011. 硬件判别逻辑一硬件判别逻辑一SA、SB与与Sf的关系的关系溢出溢出= = S SA ASBSBSfSfS SA ASfSfSBSB2. 硬件判别逻辑二硬件判别逻辑二Cf与与C的

27、关系的关系正确正确0 00110 00101A=3 B=2 3+2:0 0101 2A=10 B=7 10+7:0 10100 01111 0001 正溢正溢正确正确负溢负溢正确正确正确正确3A= -3 B= -2-3+(-2):1 1011 1 11011 11104A= -10 B= -7 -10+(-7):0 1111 1 01101 10015A=6 B= -4 6+(-4):0 0010 0 01101 11006A= -6 B=4 -6+4:1 1110 1 10100 0100Cf=0Cf=0C =0C =0Cf=0Cf=0C =1C =1Cf=1Cf=1C =1C =1Cf=1

28、Cf=1C =0C =0Cf=1Cf=1C =1C =1Cf=0Cf=0C =0C =01111112A=10 B=7 10+7 : 0 1010 0 01111 0001 4A= -10 B= -7 -10+(-7):0 1111 1 01101 10011. 硬件判别逻辑一硬件判别逻辑一SA、SB与与Sf的关系的关系溢出溢出= = S SA ASBSBSfSfS SA ASfSfSBSB2. 硬件判别逻辑二硬件判别逻辑二Cf与与C的关系的关系溢出溢出= Cf C= Cf C3. 硬件判别逻辑三双符号位硬件判别逻辑三双符号位13+2:正确正确00 001100 001000 0101 210

29、+7:00 101000 011101 0001 正溢正溢正确正确负溢负溢正确正确正确正确3-3+(-2):11 0111 11 110111 11104-10+(-7):10 1111 11 011011 100156+(-4):00 0010 00 011011 11006-6+4:11 1110 11 101000 0100第一符号位第一符号位Sf1第二符号位第二符号位Sf22A=10 B=7 10+7 : 0 1010 0 01111 0001 4A= -10 B= -7 -10+(-7):0 1111 1 01101 10011. 硬件判别逻辑一硬件判别逻辑一SA、SB与与Sf的关系

30、的关系溢出溢出= = S SA ASBSBSfSfS SA ASfSfSBSB2. 硬件判别逻辑二硬件判别逻辑二Cf与与C的关系的关系溢出溢出= Sf1 Sf2= Sf1 Sf23. 硬件判别逻辑三双符号位硬件判别逻辑三双符号位溢出溢出= Cf C= Cf C2.3.3 移位操作移位操作逻辑移位逻辑移位 :数码位置变化,数值不变。:数码位置变化,数值不变。1. 移位类型移位类型算术移位算术移位 1 0 0 0 1 1 1 1循环左移:循环左移:0 :数码位置变化,数值变化:数码位置变化,数值变化,符号位不变。符号位不变。1 0 0 1 1 1 1 算术左移:算术左移:1 0 0 1 1 1 1

31、 10 1 1 1 1 0 (-15)(-30) 移位存放器:移位存放器:2. 移位逻辑移位逻辑 在存放器中移位在存放器中移位串行接口中。串行接口中。D4 D3 D2 D1D4 D3 D2 右移右移左移左移 D3 D2 D1 移位门:移位门: 斜位传送运算器中。斜位传送运算器中。左斜左斜 右斜右斜 4 3 1 2门门4 门门3 门门2 门门1移位存放器移位存放器移位门移位门加法器加法器1单符号位单符号位 : 0 01110 1110 2双符号位:双符号位:00 1110 00 01113.正数补码移位规那么正数补码移位规那么3 3移位规那么移位规那么左移左移右移右移右移右移0 0111 0 0

32、011 左移左移左移左移右移右移右移右移01 1100 00 1110 00 0111 数符不变数符不变单:符号位不变;双:第一符号单:符号位不变;双:第一符号位不变。位不变。空位补空位补0右移时第二符号位移至尾数最高位。右移时第二符号位移至尾数最高位。1单符号位单符号位 : 1 10111 0110 2双符号位:双符号位:10 1100 11 01104.负数补码移位规那么负数补码移位规那么3 3移位规那么移位规那么左移左移右移右移右移右移1 1011 1 1101 左移左移右移右移右移右移11 0110 11 1011 数符不变数符不变单:符号位不变;双:第一符号单:符号位不变;双:第一符

33、号位不变。位不变。左移空位补左移空位补0第二符号位移至尾数最高位。第二符号位移至尾数最高位。右移空位补右移空位补1易出错处:易出错处:00 1110 左左右右01 1100 正确:正确:11 0110 10 1100 00 1100 01 1100 00 0110 正确:正确:00 1110 11 1100 左左正确:正确:10 1100 11 1110 右右11 0110 正确:正确:2.3.4 舍入方法舍入方法1. 0舍舍1入原码、补码入原码、补码0 00100原原 1 00101原原 1 11011补补 2. 末位恒置末位恒置1原码、补码原码、补码0 00100原原 1 11011补补

34、1 00101原原 0 0010原原 1 0011原原 1 1110补补 0 0011原原 1 0011原原 1 1101补补 1 0011原原 1 1101补补 例例. 保管保管4位尾数:位尾数: 例例. 保管保管4位尾数:位尾数: 第四节第四节 定点乘法运算定点乘法运算2.4.1 原码一位乘法原码一位乘法 每次用一位乘数去乘被乘数。每次用一位乘数去乘被乘数。 1.算法分析算法分析乘法乘法 部分积累加、移位。部分积累加、移位。例例. 0.11011.1011乘积乘积 P = X P = X Y Y积符积符 SP= SX SYSP= SX SYX原原Y原原1 1手算手算 0.1101 0.11

35、01 0.10110.1011 1101 1101 1101 1101 0000 0000 1101 1101 0.10001111 0.10001111上符号:上符号:1.100011111.10001111部分积部分积问题:问题:1 1加数增多由乘数位数决议。加数增多由乘数位数决议。 2 2加数的位数增多与被乘数、乘加数的位数增多与被乘数、乘 数位数有关。数位数有关。改良:将一次相加改为分步累加。改良:将一次相加改为分步累加。2 2分步乘法分步乘法每次将一位乘数所对应的部分积与原部每次将一位乘数所对应的部分积与原部分积的累加和相加,并移位。分积的累加和相加,并移位。设置存放器:设置存放器:

36、 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 .1011 00.0000 .1011 1 1Cn=1Cn=1+B+BCnCn+ 00.1101+ 00.110100.110100.1101 0.1101 0.1101 0.10110.1011 110

37、1 1101 1101 1101 0000 0000 1101 1101 0.10001111 0.10001111BC 1101 1101 00.011000.01101.1011.101 0.1101 0.1101 0.10110.10112 2Cn=1Cn=1+B+B+ 00.1101+ 00.110101.001101.001100.100100.100111.1011.10 0.1101 0.1101 0.10110.1011 0.1101 0.1101 0.10110.1011 1101 1101 1101 1101 0000 0000 1101 1101 0.10001111 0

38、.10001111BC3 3Cn=0Cn=0+0+0+ 00.0000+ 00.000000.100100.100100.010000.0100111.1111.14 4Cn=1Cn=1+B+B+ 00.1101+ 00.110101.000101.000100.100000.100011111111X X原原Y Y原原 = 1.10001111 = 1.10001111 2.算法流程算法流程0 A0 A、X BX B、Y CY C、0 CR0 CRCn = 1 Cn = 1 ?CR = n CR = n ?1/21/2A+BA+B A A,C C1/21/2A+0A+0 A A,C C CR

39、 + 1 CR CR + 1 CRYYNN Sx + Sy SA Sx + Sy SA 3.运算规那么运算规那么1 1操作数、结果用原码表示;操作数、结果用原码表示;2 2绝对值运算,符号单独处置;绝对值运算,符号单独处置;3 3被乘数被乘数(B)(B)、累加和、累加和(A)(A)取双符号位;取双符号位;4 4乘数末位乘数末位(Cn)(Cn)为判别位,其形状决议为判别位,其形状决议 下步操作;下步操作;5 5作作n n次循环累加、右移。次循环累加、右移。 4.逻辑实现逻辑实现加法器输入端控制信号:加法器输入端控制信号:+A+A、+B+B加法器输出端控制信号:加法器输出端控制信号:1/2 A1/

40、2 A、C C、CPACPA、CPCCPC A4 A3 A2 A1 A4 A3 A2 A1 门门4 4 门门3 3 门门2 2 门门1 1 C4 C3 C2 C1 C4 C3 C2 C1 门门4 4 门门3 3 门门2 2 门门1 1 4 3 2 1 4 3 2 1 1/2 ACPACPCCC4 C3 C2+A+BA1 B12.4.2 补码一位乘法补码一位乘法 1.算法分析算法分析 X补补 = X0.X1X2Xn1 1Y Y为正:为正:Y Y补补 = 0.Y1Y2Yn = 0.Y1Y2Yn (XY) (XY)补补 = X = X补补(0.Y1Y2Yn)(0.Y1Y2Yn)2 2Y Y为负:为负

41、:Y Y补补 = 1.Y1Y2Yn = 1.Y1Y2Yn (XY) (XY)补补 = X = X补补(0.Y1Y2Yn)+(-X)(0.Y1Y2Yn)+(-X)补补3 3Y Y符号恣意:符号恣意: (XY) (XY)补补 = X = X补补(0.Y1Y2Yn)+(-X)(0.Y1Y2Yn)+(-X)补补Y0Y0符号位符号位4 4展开为部分积的累加和方式:展开为部分积的累加和方式:(XY)(XY)补补 = X = X补补(0.Y1Y2Yn)+(-X)(0.Y1Y2Yn)+(-X)补补Y0Y0 = X = X补补(0.Y1Y2Yn)-X(0.Y1Y2Yn)-X补补Y0Y0 = X = X补补(-Y

42、0+2 Y1+2 Y2+2 Yn)(-Y0+2 Y1+2 Y2+2 Yn)-1 -2 -n-1 -2 -n = X = X补补 -Y0+(Y1-2 Y1)+(2 Y2-2 Y2)+ -Y0+(Y1-2 Y1)+(2 Y2-2 Y2)+-1 -1 -2-1 -1 -2-(n-1) -n -(n-1) -n +(2 Yn-2 Yn) +(2 Yn-2 Yn) = X = X补补 (Y1-Y0)+2 (Y2-Y1)+2 (Y3-Y2)+ (Y1-Y0)+2 (Y2-Y1)+2 (Y3-Y2)+-1 -2-1 -2 +2 (0 -Yn) +2 (0 -Yn)-n-n +2 (0 -Yn) +2 (0

43、-Yn)-n-nYn+1Yn+1 = X = X补补 (Y1-Y0)+2 (Y2-Y1)+2 (Y3-Y2)+ (Y1-Y0)+2 (Y2-Y1)+2 (Y3-Y2)+-1 -2-1 -2 +2 (0 -Yn) +2 (0 -Yn)-n-nYn+1Yn+1比较法:用相邻两位乘数比较的结果断定比较法:用相邻两位乘数比较的结果断定 +X补、补、-X补或补或+0。 2.比较法算法比较法算法Yn(高位高位) Yn+1(低位低位) 操作操作(A补为部分积累补为部分积累加和加和) 0 00 00 10 11 01 01 1 1 1 1/2A 1/2A补补 1/2(A1/2(A补补+X+X补补) ) 1/2

44、(A 1/2(A补补-X-X补补) ) 1/2A 1/2A补补( 0 )( 0 )( 1 )( 1 )(-1 )(-1 )( 0 )( 0 )3.3.运算实例运算实例X=-0.1101,Y=-0.1011,X=-0.1101,Y=-0.1011,求求(XY)(XY)补。补。初值:初值:A=00.0000,B=XA=00.0000,B=X补补=11.0011,=11.0011, -B=(-X) -B=(-X)补补=00.1101,C =Y=00.1101,C =Y补补=1.0101=1.0101步数步数 条件条件 操作操作 A C A C 00.0000 1.0101 00.0000 1.010

45、1 1 11 01 0-B-BCnCn+ 00.1101+ 00.110100.110100.110100.011000.011011.010111.01012 20 10 1+B+B+ 11.0011+ 11.001111.100111.100111.110011.1100111.010111.0103 31 01 0-B-B+ 00.1101+ 00.110100.100100.100100.010000.01001111.011111.014 40 10 1+B+B+ 11.0011+ 11.001111.011111.011111.101111.101111111.011111.00

46、0 Cn+1Cn+1CnCn+1CnCn+15 51 01 0-B-B+ 00.1101+ 00.1101(XY)(XY)补补 = 0.10001111= 0.100011114 40 10 1+B+B+ 11.0011+ 11.001111.011111.011111.101111.101111111.011111.05 51 01 0-B-B+ 00.1101+ 00.110100.100000.100011111111修正修正(1)A(1)A、B B取双符号位,符号参与运算;取双符号位,符号参与运算;(2)C(2)C取单符号位,符号参与移位,以决议最后能否取单符号位,符号参与移位,以决议

47、最后能否 修正;修正;(3)C(3)C末位设置附加位末位设置附加位Cn+1Cn+1,初值为,初值为0 0,CnCn+1CnCn+1组成判组成判 断位,决议运算操作;断位,决议运算操作;(4)(4)作作n n步循环步循环, ,假设需作第假设需作第n+1n+1步步, ,那么不移位那么不移位, ,仅修正。仅修正。 4. 4.运算规那么运算规那么1.0 : -B修正修正0.1 : +B修正修正0.0 : 不修正不修正1.1 : 不修正不修正5.5.逻辑实现逻辑实现加法器输入端控制信号:加法器输入端控制信号:+A+A、+B+B、+B+B、+1+1加法器输出端控制信号:加法器输出端控制信号:1/2 A1/

48、2 A、C C、 A A、CPACPA、CPCCPC2.4.3 原码两位乘法原码两位乘法 每次用两位乘数去乘被乘数。每次用两位乘数去乘被乘数。 1.算法分析算法分析Yi(高位高位) Yi+1(低位低位) 部分积部分积 累加、移位累加、移位 0 00 00 10 11 01 01 1 1 1 1/4A 1/4A 1/4(A+X) 1/4(A+X) 1/4(A+2X) 1/4(A+2X) 1/4(A+3X) 1/4(A+3X)( 0 )( 0 )( 1 )( 1 )( 2 )( 2 )( 3 )( 3 ) 0 0 X X 2X 2X 3X 3X如何实现如何实现+3X+3X操作?操作? 1/4(A+

49、3X)= 0 0 00 0 00 0 10 0 10 1 00 1 00 1 1 0 1 1 操操 作作 1/4(A+2X+X)=1/4(A+2X)+1/4X 1/4(A-X+4X)=1/4(A-X)+X 1/4(A+2X+X)=1/4(A+2X)+1/4X 1/4(A-X+4X)=1/4(A-X)+X 1/4(A-X+4X)=1/4(A-X)+X 设置欠帐触发器设置欠帐触发器CJCJ=0 0 不欠帐不欠帐1 1 欠帐欠帐, ,下次补作下次补作+X+X操作操作2.2.算法算法Yi Yi+1 CJYi Yi+1 CJ1/4(A+X) 0 CJ1/4(A+X) 0 CJ1/4(A+X) 0 CJ1

50、/4(A+X) 0 CJ1/4(A+2X) 0 CJ1/4(A+2X) 0 CJ1/4A 0 CJ1/4A 0 CJ1 0 01 0 01 0 11 0 11 1 01 1 01 1 1 1 1 1 Yi Yi+1 CJYi Yi+1 CJ操操 作作1/4(A-X) 1 CJ1/4(A-X) 1 CJ1/4(A-X) 1 CJ1/4(A-X) 1 CJ1/4A 1 CJ1/4A 1 CJ1/4(A+2X) 0 CJ1/4(A+2X) 0 CJ3.3.运算实例运算实例例例1.X1.X原原=1.111111,Y=1.111111,Y原原=0.111001,=0.111001,求求(XY)(XY)原

51、。原。初值:初值:A=000.000000, B= X A=000.000000, B= X =000.111111, =000.111111, 2B=001.111110, -B=111.000001,2B=001.111110, -B=111.000001,C = Y =00.111001, C = Y =00.111001, CJ=0CJ=0步数步数 条件条件 操作操作 A C A C 000.000000 00.111001 000.000000 00.111001 1 10 1 00 1 0+B+BCJCJ +000.111111 +000.111111000.111111000.1

52、11111000.001111000.001111 1100.11101100.11102 21 0 01 0 0 +2B+2B +001.111110+001.111110010.001101010.001101000.100011000.100011 011100.11011100.113 31 1 01 1 0-B-B +111.000001+111.000001111.100100111.100100111.111001111.111001 000111 00.000111 00.4 40 0 10 0 1+B+B +000.111111+000.111111000.111000000

53、.111000 000111000111Cn-1CnCn-1CnCn-Cn-1CnCJ1CnCJ0 0 0 0 2220 0 1 1 还帐还帐(XY)(XY)原原=1.111000000111=1.111000000111例例2.X2.X原原=0.00111,Y=0.00111,Y原原=1.01001,=1.01001,求求(XY)(XY)原。原。初值:初值:A=000.00000, B= X =000.00111, A=000.00000, B= X =000.00111, 2B=000.01110, -B=111.11001,2B=000.01110, -B=111.11001,C = Y

54、 =00.01001, C = Y =00.01001, CJ=0CJ=0步数步数 条件条件 操作操作 A C A C 000.00000 00.01001 000.00000 00.01001 0 0Cn-1CnCn-1Cn CJCJ0 0Cn-Cn-1CnCJ1CnCJ1 1 1 0 01 0 0 +2B+2B+000.01110+000.01110000.01110000.01110222000.00011000.000111000.01001000.0100+000.00000+000.00000111000.01111000.01 000.00011 000.00011000.000

55、00000.00000+000.00111+000.001110 02 2 0 0 00 0 00 1 0 0 1 0 0 03 3+B+B+0+0000.00111000.00111 000.00001 000.00001111110 00.111110 00. 0 0(XY)(XY)原原=1.0000111111=1.0000111111 4.运算规那么运算规那么1 1绝对值相乘,符号单独处置。绝对值相乘,符号单独处置。2 2A A、B B取三符号位。取三符号位。3 3C C取双符号位,参与移位;取双符号位,参与移位;C C尾数凑足偶数位。尾数凑足偶数位。4 4CJCJ初值为初值为0 0,

56、根据每步操作决议其形状,不参,根据每步操作决议其形状,不参 加移位。加移位。5 5作作1/2n1/2n步循环;假设需添加一步,那么该步只步循环;假设需添加一步,那么该步只还还 帐,不移位。帐,不移位。 5.逻辑实现逻辑实现加法器输入端控制信号:加法器输入端控制信号:+A+A、+B+B、+2B+2B、+B+B、+1+1加法器输出端控制信号:加法器输出端控制信号:1/4 A1/4 A、 A A、C C、 CPA CPA、CPCCPC、0 CJ0 CJ、1 CJ 1 CJ 2 第五节第五节 定点除法运算定点除法运算除法除法 假设干余数与除数加减、移位。假设干余数与除数加减、移位。例例. 0.1011

57、0. 0.101100.111110.111110.101100.10110 1101 11010.0.0 01 1 11111 11111 0.11111 0.111110 00 00 01 1 11111 11111 10101 101010 01 1 11111 11111 1011 10110 00 0.0000000000.0.0.商:商: 0.10110 0.10110余数:余数:0.101100.101102 2 5实现除法的关键:实现除法的关键:比较余数、除数比较余数、除数绝对值大小,以绝对值大小,以决议上商。决议上商。2.5.1 原码恢复余数法原码恢复余数法1.算法算法 比较

58、两数大小可用减法试探。比较两数大小可用减法试探。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 B:除数,:除数,C C:商:商初值:初值:A= X = 00.10110A= X = 00.10110 B= Y = 00.11111 B= Y = 00.11111 C= Q = 0.

59、00000 C= Q = 0.00000 -B= 11.00001 -B= 11.00001步数步数 条件条件 操作操作 A C A C 00.10110 0.00000 00.10110 0.00000 1 10 0-B-B 01.01100 01.01100+11.00001+11.0000100.0110100.011010.000010.000012 21 1 -B-B00.1101000.11010+11.00001+11.0000111.1101111.110110.000100.000103 3恢复余数恢复余数+B+B+00.11111+00.1111100.1101000.11

60、01001.1010001.101000.001010.001014 40 0-B-B +11.00001+11.0000100.1010100.10101CnCnSASAQ1 Q1 Q2 Q2 Q3 Q3 r0r02r02r0r1r12r12r1r2r2r2r22r22r2r3r3步数步数 条件条件 操作操作 A C A C 00.10101 0.00101 00.10101 0.00101 5 50 0-B-B 01.01010 01.01010+11.00001+11.0000100.0101100.010110.010110.010116 61 1 -B-B00.1011000.101

温馨提示

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

评论

0/150

提交评论