第17次课第3章数值运算及运算器_第1页
第17次课第3章数值运算及运算器_第2页
第17次课第3章数值运算及运算器_第3页
第17次课第3章数值运算及运算器_第4页
第17次课第3章数值运算及运算器_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

1、第17次课第3章数值运算及运算器第1页,共28页,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器1、逻辑移位三、移位运算 按操作性质可分为三种类型: 逻辑移位、循环移位、算术移位。只有数码位置的变化,而无数量的变化。左移:低位补0。 右移:高位补0。例1:A寄存器的初值为 10110101 逻辑右移一位后为 01011010 逻辑左移一位后为 01101010第2页,共28页,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器2、循环移位三、移位运算 寄存器两端触发器有移位通路,形成闭合的移位环路。例2:A寄存器的初值为 10011001

2、循环右移一位后为 11001100循环左移一位后为 00110011第3页,共28页,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器3、算术移位三、移位运算数的符号不变,而数值发生变化。左移一位将使数值扩大一倍(乘以2)右移一位则使数值缩小一倍(乘以1/2)第4页,共28页,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器3、算术移位(续)三、移位运算(1)正数:原码、补码、反码左右移位时,空位均补入0(符号不变)。例3:A寄存器初值:0.0110左移一位:0.1100右移一位:0.0011第5页,共28页,2022年,5月20日,16

3、点2分,星期五第二部分:第3章 数值运算及运算器3、算术移位(续)三、移位运算(2)负数:原码:符号位不变(为1),空位补0。例4: A寄存器的初值为 1.0110 算术左移一位后为 1.1100 算术右移一位后为 1.0011补码:左移后的空位补0,右移后的空位补1。第6页,共28页,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器3、算术移位(续)三、移位运算例5:初值:1.1011左移一位:1.0110右移一位:1.1101反码:移位后的空位补1。例6:初值:1.1011左移一位:1.0111右移一位:1.1101第7页,共28页,2022年,5月20日,16

4、点2分,星期五第二部分:第3章 数值运算及运算器四、乘法运算 实现乘除运算的方案:1、软件实现2、设置专用的乘、除法器3、在加法器基础上增加逻辑线路 在计算机中,乘法运算大多数由累加与移位来实现,也有些机器中具有由大规模集成电路制造的阵列乘法模块。第8页,共28页,2022年,5月20日,16点2分,星期五 原码一位乘法是从手算演变而来的,即用两个操作数的绝对值相乘,乘积的符号为两操作数符号的异或值(同号为正,异号为负)。 乘积P=|X|Y| 符号Ps=XsYs 式中:Ps为乘积的符号,Xs和Ys为被乘数和乘数的符号。第二部分:第3章 数值运算及运算器四、乘法运算1、原码一位乘第9页,共28页

5、,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器四、乘法运算1、原码一位乘(续)原码一位乘法的规则:参加运算的操作数取其绝对值;令乘数的最低位为判断位,若为“1”,加被乘数,若为“0”,不加被乘数(加0);累加后的部分积以及乘数右移一位;重复n次和 ;符号位单独处理,同号为正,异号为负。 第10页,共28页,2022年,5月20日,16点2分,星期五 通常,乘法运算需要3个寄存器。被乘数存放在B寄存器中;乘数存放在C寄存器中;A寄存器用来存放部分积与最后乘积的高位部分,它的初值为0。运算结束后寄存器C中不再保留乘数,改为存放乘积的低位部分。 例7:已知:X=0.1

6、101,Y=-0.1011,求:XY。 |X|=00.1101B, |Y|=0.1011C,0A第二部分:第3章 数值运算及运算器四、乘法运算1、原码一位乘(续)第11页,共28页,2022年,5月20日,16点2分,星期五 A C 说明0 0.0 0 0 0 1 0 1 10 0.1 1 0 1 0 0.0 1 1 0 1 1 0 1 部分积右移一位0 1.0 0 1 1+|X| 0 0.1 1 0 1 C4=1,+|X| 0 0.1 0 0 1 1 1 1 0 部分积右移一位+0 0 0.0 0 0 0 C4=0,+00 0.1 0 0 1 0 0.0 1 0 0 1 1 1 1 部分积右

7、移一位+|X| 0 0.1 1 0 1 C4=1,+|X|0 1.0 0 0 1 0 0.1 0 0 0 1 1 1 1 部分积右移一位PS=XSYS=01=1XY=-0.10001111 第二部分:第3章 数值运算及运算器+|X| 0 0.1 1 0 1 C4=1,+|X|第12页,共28页,2022年,5月20日,16点2分,星期五图1 原码一位乘法流程图 第二部分:第3章 数值运算及运算器EndYN|X| B,|Y| C0 A,0 CRCn=1?CR+1CRCR=n? (A+0) A C C (A+B) A C CXS YS PSYN 第13页,共28页,2022年,5月20日,16点2

8、分,星期五第二部分:第3章 数值运算及运算器四、乘法运算2、原码两位乘原码两位乘法的规则:参加运算的数用原码来表示。符号位不参加乘法运算,单独处理,同号为正,异号为负。乘数的数值位个数为奇数时,用一个符号位,为偶数时乘数取双符号位。被乘数和部分积取3个符号位。增加一个触发器Cj,初始值为0。逐次比较相邻两位Yi-1Yi及Cj的值决定应执行的操作,-|X|操作可以按,+|X|变补来实现 。当乘数的数值位个数为奇数时,共需(n+1)/2累加和移位,但最后一次移1位;当乘数的数值位个数为偶数时,共需n/2+1次累加,n/2次移位(最后一次不移位)。 第14页,共28页,2022年,5月20日,16点

9、2分,星期五 例8:已知:X=0.11011,Y=-0.11101,求:XY。 X原=0.11011,Y原=1.11101,-X补=1.00101 |X|=000.11011B, |Y|=0.11101C,0Cj第二部分:第3章 数值运算及运算器四、乘法运算2、原码两位乘(续)第15页,共28页,2022年,5月20日,16点2分,星期五 A C Cj 说明0 0 0.0 0 0 0 0 0.1 1 1 0 1 00 0 0.1 1 0 1 1 0 0 0.0 0 1 1 0 1 1 0 1 1 1 0 部分积右移两位+|X| 0 0 0.1 1 0 1 1 C4C5Cj=010,+|X|,

10、Cj=0PS=XSYS=01=1 XY=-0.1100001111 第二部分:第3章 数值运算及运算器+|X|变补 1 1 1.0 0 1 0 1 C4C5Cj=110, +|X|变补 , Cj=11 1 1.0 1 0 1 1 1 1 1.1 1 0 1 0 1 1 1 1 0 1 1 部分积右移两位+2|X| 0 0 1.1 0 1 1 0 C4C5Cj=011,+2|X|, Cj=00 0 1.1 0 0 0 0 0 0 0.1 1 0 0 0 0 1 1 1 1 0 1 部分积右移一位第16页,共28页,2022年,5月20日,16点2分,星期五 虽然原码乘法比补码乘法容易实现,但因为

11、补码加减法简单,在以加减运算为主的通用机中操作数都用补码表示,所以这类计算机在做乘法时常使用补码乘法。(1)校正法 校正法是将X补和Y补按原码规则运算,所得结果根据情况再加以校正,从而得到正确的XY补。补码乘法的统一表达式: XY补=X补(0.Y1Y2Yn)+-X补Ys第二部分:第3章 数值运算及运算器四、乘法运算3、补码一位乘第17页,共28页,2022年,5月20日,16点2分,星期五(2)比较法Booth乘法 递推公式: Z0补=0 Z1补=2-1Z0补+(Yn+1-Yn)X补 Z2补=2-1Z1补+(Yn-Yn-1)X补 Zn补=2-1Zn-1补+(Y2-Y1)X补 XY补=Zn补+(

12、Y1-Ys)X补 式中,Z0补为初始部分积,Z1补Zn补依次为各次求得的累加并右移之后的部分积。 四、乘法运算3、补码一位乘第二部分:第3章 数值运算及运算器第18页,共28页,2022年,5月20日,16点2分,星期五 判断位 Yn Yn+1 操 作 0 0 原部分积右移一位 0 1 原部分积加X补后右移一位 1 0 原部分积加-X补后右移一位 1 1 原部分积右移一位 (2)比较法Booth乘法 (续)四、乘法运算3、补码一位乘第二部分:第3章 数值运算及运算器第19页,共28页,2022年,5月20日,16点2分,星期五 Booth乘法规则: 参加运算的数用补码表示; 符号位参加运算;

13、乘数最低位后面增加一位附加位Yn+1,其初值为0; 由于每求一次部分积要右移一位,所以乘数的最低两位Yn、Yn+1的值决定了每次应执行的操作; 移位按补码右移规则进行; 共需做n+1次累加,n次移位,第n+1次不移位。(2)比较法Booth乘法(续) 四、乘法运算3、补码一位乘第二部分:第3章 数值运算及运算器第20页,共28页,2022年,5月20日,16点2分,星期五 由于符号位要参加运算,部分积累加时最高有效位产生的进位可能会侵占符号位,故被乘数和部分积应取双符号位,而乘数只需要一位符号位。运算时仍需要有3个寄存器,各自的作用与原码时相同,只不过存放的内容均为补码表示而已。 例9:已知X

14、=-0.1101,Y=0.1011;求XY。 X补=11.0011B,Y补=0.1011C,0A -X补=00.1101(2)比较法Booth乘法(续) 四、乘法运算3、补码一位乘第二部分:第3章 数值运算及运算器第21页,共28页,2022年,5月20日,16点2分,星期五 A C 附加位 说明0 0.0 0 0 0 0.1 0 1 1 0+-X补 0 0.1 1 0 1 C4C5=10,+-X补0 0.1 1 0 1 0 0.0 1 1 0 1 0 1 0 1 1 部分积右移一位+0 0 0.0 0 0 0 C4C5=11,+00 0.0 1 1 0 0 0.0 0 1 1 0 1 0 1

15、 0 1 部分积右移一位+X补 1 1.0 0 1 1 C4C5=01,+X补1 1.0 1 1 0 1 1.1 0 1 1 0 0 1 0 1 0 部分积右移一位+-X补 0 0.1 1 0 1 C4C5=10,+-X补0 0.1 0 0 0 0 0.0 1 0 0 0 0 0 1 0 1 部分积右移一位+X补 1 1.0 0 1 1 C4C5=01,+X补1 1.0 1 1 1XY补=1.01110001XY=-0.10001111第二部分:第3章 数值运算及运算器第22页,共28页,2022年,5月20日,16点2分,星期五图2 Booth乘法流程图第二部分:第3章 数值运算及运算器第2

16、3页,共28页,2022年,5月20日,16点2分,星期五四、乘法运算4、补码两位乘第二部分:第3章 数值运算及运算器 每次处理乘数中的两位,使速度提高一倍。 Z补=2-1Z补+(Yi+1-Yi)X补 Z补=2-1Z补+(Yi-Yi-1)X补 = 2-2Z补+(Yi+1+Yi-2Yi-1)X补第24页,共28页,2022年,5月20日,16点2分,星期五第二部分:第3章 数值运算及运算器四、乘法运算4、补码两位乘补码两位乘法的规则:参加运算的数用补码来表示。符号位参加乘法运算。乘数的数值位个数为奇数时,用一个符号位,为偶数时乘数取双符号位。被乘数和部分积取3个符号位。乘数的最低位增加一位附加位

17、Yn+1,初始值为0。逐次比较相邻3位Yi-1YiYi+1的值决定应执行的操作。移位按补码右移规则来实现 。当乘数的数值位个数为奇数时,共需(n+1)/2累加和移位,但最后一次移1位;当乘数的数值位个数为偶数时,共需n/2+1次累加,n/2次移位(最后一次不移位)。 第25页,共28页,2022年,5月20日,16点2分,星期五 例9:已知:X=0.01001,Y=-0.01101,采用两位补码求:XY。 X补=000.01001,Y补=1.0011,-X补=111.10111,2X补=000.10010,2-X补=111.01110 X补B, Y补C第二部分:第3章 数值运算及运算器四、乘法运算4、补码两位乘(续)第26页,共28页,2022年,5月20日,16点2分,星期五 A C 附加位 说明0 0 0.0 0 0 0 0 1.1 0 0 1 1 01 1 1.1 0 1 1 1 1 1 1.1 1 1 0 1 1 1 1 1 0 0 1 部分积右移两位XY补=1.1110001011 XY=-0.0001110101 第二部分:第3章 数值运算及运算器+X补 0 0 0.0 1 0 0 1 C4C5C6=001, +X补0 0 0.0 0 1 1 0 0 0 0.0

温馨提示

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

评论

0/150

提交评论