计原及汇编3电子教案

上传人:yuzo****123 文档编号:138657717 上传时间:2020-07-16 格式:PPT 页数:93 大小:1.65MB
返回 下载 相关 举报
计原及汇编3电子教案_第1页
第1页 / 共93页
计原及汇编3电子教案_第2页
第2页 / 共93页
计原及汇编3电子教案_第3页
第3页 / 共93页
计原及汇编3电子教案_第4页
第4页 / 共93页
计原及汇编3电子教案_第5页
第5页 / 共93页
点击查看更多>>
资源描述

《计原及汇编3电子教案》由会员分享,可在线阅读,更多相关《计原及汇编3电子教案(93页珍藏版)》请在金锄头文库上搜索。

1、第三章 数值运算及运算器,第一节 算术逻辑运算基础,1.原码加减运算 2.补码加减运算 两个基本关系式: x + y补 = x补 + y补 (mod M) x - y补 = x补 + -y补 (mod M) 由y补求-y补的方法: 将y补连同符号位一起求反加1。,一、定点加减运算,例1: y = -0.0110 y补 = 1.1010-y补 = 0.0110,注意:求一个数的补码: 正数时,补码和原码相同; 负数时, 对原码除符号位外求反加1。,例2: y = 0.0111 y补 = 0.0111-y补 = 1.1001,补码加减运算,补码加、减运算规则,参加运算的操作数用补码表示。 符号位参

2、加运算。 操作码为加运算时,两数直接相加;当操作码为减运算时,将减数连同符号位一起求反加1,再与被减数相加。 运算结果以补码表示。,例2: 已知: x = -0.1001, y = -0.0101; 求 x+y = ?,解: x补 = 1.0111 y补=1.1011 x补 1.0111 + y补 1.1011 x+y补 1 1.0010 x+y = -0.1110,补码加、减运算举例,例3: 已知: x = 0.1001, y = 0.0110; 求 x-y = ?,解: x补 = 0.1001 y补=0.0110 -y补 =1.1010 x补 0.1001 +-y补 1.1010 x-y补

3、 1 0.0011 x-y = 0.0011,补码加、减运算举例,例4: 已知: x = -0.1001, y = -0.0110; 求 x-y = ?,解: x补 = 1.0111 y补=1.1010 -y补 = 0.0110 x补 1.0111 +-y补 0.0110 x-y补 1.1101 x-y = -0.0011,补码加、减运算举例,3.反码加减运算,反码加减运算的规则: 参加运算的操作数用反码表示。 符号位参加运算。 当操作码为加运算时,两数直接相加;当操 作码为减运算时,将减数连同符号位一起求 反与被减数相加。 如果符号位产生进位,则在末位加1,即循环 进位。 运算结果为反码表示

4、。,二、溢出检测,1. 采用一个符号位判断,规则: 当两个同号数相加,若所得结果符号与两数符号不同,则表明溢出。,设An、Bn分别表示两个操作数的符号; Sn表示结果的符号, 则有: 溢出=AnBnSn + AnBnSn,2. 采用最高有效位的进位判断,方法: 两个正数相加,最高有效位有进位,符号位无进位,表明运算结果发生溢出;两负数相加,最高有效位无进位,符号位有进位,表明结果发生溢出。,设Cn表示符号位本身的进位,Cn-1表示最高有效位向符号位的进位; 得出: 溢出=CnCn-1 + CnCn-1=CnCn-1,3.采用变形补码(双符号位)判溢出,正数:两个符号位均为0;00. x1x2x

5、n 负数:两个符号位均为1;11. x1x2xn,溢出判断: 两数相加,结果符号位为00、11,表示没溢出;结果符号位为01表示正溢出,为10表示负溢出。,如果用 Sn+1、Sn 分别表示最高符号位和第二符号位,则采用变形补码溢出检测电路: OVR = Sn+1Sn,三、移位,按操作性质可分为三种类型: 逻辑移位、循环移位、算术移位。,1、逻辑移位 只有数码位置的变化,而无数量的变化。 左移:低位补0。 右移:高位补0。 例:A寄存器的初值为 10110101 逻辑右移一位后为 01011010 逻辑左移一位后为 01101010,寄存器两端触发器有移位通路,形成闭合的移位环路。,例:A寄存器

6、的初值为 10011001,循环右移一位后为 11001100 循环左移一位后为 00110011,2、 循环移位,数的符号不变,而数值发生变化。 左移一位将使数值扩大一倍(乘以2) 右移一位则使数值缩小一倍(乘以1/2) 算术移位规则: (1)正数:原码、补码、反码左右移位时,空位均补入0(符号不变)。,3、 算术移位,例:A寄存器初值:0.0110 左移一位:0.1100右移一位:0.0011,(2)负数: 原码:符号位不变(为1),空位补0。 例:A寄存器的初值为 1.0110 算术左移一位后为 1.1100 算术右移一位后为 1.0011 补码:左移后的空位补0,右移后的空位补1。,3

7、、 算术移位,例:初值:1.1011,左移一位:1.0110 右移一位:1.1101 反码:移位后的空位补1。 例:初值:1.1011 左移一位:1.0111 右移一位:1.1101,四、十进制运算,1.进制转换 2.直接进行十进制运算 3. BCD码的加法运算,五、逻辑运算 逻辑运算例:,例(1)逻辑或: X=10100001,Y=10011011,XY=? 10100001 X 10011011 Y 10111011,例(2)按位置“1”:,设: A=10010010,将A最低位置“1”;设:B =00000001 10010010 A 00000001 B 10010011 A,例(3)

8、:按位清,设:A=10010010,将A最高位清“0” 设:B=01111111 10010010 A 01111111 B 00010010 A,例(4):按位测试,设:A=10010010,测A最高位是否为“1”; 设: B=10000000 10010010 10000000 10000000 结果不全为“0”,表明被测码的被测位为“1”。 结果为全“0”,表明被测码的被测位为“0”。,例(5)比较,设:A=10010010,B=10010011,比较A,B内容相同否? 10010010 10010011 00000001 结果全“0”,则A,B内容相等,否则内容不等。,第二节基本算术运

9、算的实现,一、加法单元,两个输出量:全加和 i 及向高位的进位Ci+1。,全加器有三个输入量: 第 i 位的两个操作数 Ai、Bi 和低位送来的进位 Ci;,全加器框图:,Ci+1,Ci,Bi,Ai,i,全加器的功能表:,全加和 i 及进位 Ci+1 的逻辑表达式:,用半加器构成的全加器,Ci,Ai,Bi,i,Ci+1,延迟时间1T,延迟时间1.5T,延迟时间1.5T,加法器有两种形式:串行加法器和并行加法器。,二、串行加法器和并行加法器,n 位字长的加法器仅有一位全加器,使用移位寄存器从低位到高位串行地提供操作数,分n步进行相加。,(一)串行加法器,(二)并行加法器 全加器位数和操作数位数相

10、同,同时对所有位进行求和。,二、串行加法器和并行加法器,串行加法器逻辑图,并行加法器中传递进位信号的逻辑线路称为进位链,三、并行加法器的进位结构,进位线路结构分为:串行进位、并行进位,将整个加法器分组(分级),对组内、组间(级间)分别采用串行或并行进位。,(一)对进位公式的分析,设相加的两个n位操作数为: A=An-1An-2Ai.A0 B=Bn-1Bn-2Bi.B0 Ci+1 = AiBi + (AiBi) Ci 进位逻辑表达式 设:Gi = AiBi 进位产生函数(Carry Generate Function) Pi = AiBi 进位传递函数(Carry Propagate Funct

11、ion) 当Pi=1时,如果低位有进位,本位将产生进位。 则:Ci+1 = Gi + PiCi,(二)串行进位(行波进位),N位串行进位的并行加法器,(二)串行进位(行波进位),串行进位的逻辑表达式:,最长进位延迟时间为 4+2.5(n-1)T ,与 n 成正比。,C1 = G0 + P0C0 =A0B0+(A0 B0)C0 C2 = G1 + P1C1=A1B1+(A1 B1)C1 C3 = G2 + P2C2=A2B2+(A2 B2)C2 Cn = Gn-1 + Pn-1Cn-1=An-1Bn-1+(An-1 Bn-1)Cn-1,(三)并行进位(同时进位、先行进位),C1 = G0+P0C

12、0 C2 = G1+P1C1 = G1+P1(G0+P0C0) C3 = G2+P2C2 = G2+P2(G1+P1(G0+P0C0) C4 = G3+P3C3 = G3+P3(G2+P2(G1+P1(G0+P0C0) 展开整理:,C1 = G0+P0C0 C2 = G1+P1G0+P1P0C0 C3 = G2+P2G1+P2P1G0+P2P1P0C0 C4 = G3+P3G2+P3P2G1+P3P2P1G0+P3P2P1P0C0,全部进位输出信号仅由进位产生函数 Gi,进位传递函数 Pi 以及最低位进位 C0 决定,与低位进位无关。,四位并行进位链线路,每位进位延迟时间为4T,四位并行进位加

13、法器,将n位加法器分成若干个小组,小组采用并行、组间采用串行的进位结构。 例:将16位加法器分成4组,每组4位,组内采用并行进位结构,组间采用串行进位结构。,(四)组内并行、组间串行的进位结构,最高进位的形成时间为 (4+32)T = 10 T 如果采用串行进位,最高进位的形成时间为 (4+152.5)T = 41.5 T,(五)组内并行、组间并行的进位结构,组内并行、组间并行的16位加法器,将加法器分成几个小组,每一小组包括几位,采用并行进位结构,小组间也采用并行进位。 再引入两个辅助函数 Gi*和Pi*;分别称为组进位产生函数和传递函数。 Gi*为本小组产生的进位(与低位小组来的进位无关)

14、。,(五)组内并行、组间并行的进位结构,Pi*为小组进位的传递条件(决定于低位小组进位能否传送至高位小组)。,Gi*和Pi*的逻辑表达式: G0*=G3+P3G2+P3P2G1+P3P2P1G0 P0*=P3P2P1P0 G1*=G7+P7G6+P7P6G5+P7P6P5G4 P1*=P7P6P5P4 G2*=G11+P11G10+P11P10G9+P11P10P9G8 P2*=P11P10P9P8 G3*=G15+P15G14+P15P14G13+P15P14P13G12 P3*=P15P14P13P12,(五)组内并行、组间并行的进位结构,C4 = G3+P3G2+P3P2G1+P3P2P

15、1G0+P3P2P1P0C0,组内并行、组间并行进位结构,小组间产生四个进位,C4、C8、C12和C16。,C4= G0*+P0*C0 C8= G1*+P1*C4= G1*+P1*G0*+P1*P0*C0 C12= G2*+P2*C8 =G2*+P2*G1*+P2*P1*G0*+P2*P1*P0*C0 C16= G3*+P3*C12 =G3*+P3*G2*+P3*P2*G1*+P3*P2*P1*G0*+P3*P2*P1*P0*C0 当Gi*、Pi*及C0形成后,C4、C8、C12和C16便可同时产生。,C4、C8、C12和C16已由组间进位线路产生,组内并行进位线路不需要再产生这些进位,将其作适当修改,便可产生小组的本地进位Gi*和小组的传送条件Pi*以及小组内的低3位进位。,例:16位加法器采用组内并行、组间并行进位结构的框图。 进位形成过程如下:从Ai、Bi、C0输入开始;经过4T形成C1、C2、C3及全部Gi*、Pi*;又经过2.5T形成C4、C8、C12、和C16;最后再经 2.5T 形成二、三、四、小组内的其余进位 C75、C119、C1513。,最长进位形成时间:(4+2.5+2.5)T = 9T,1、74181 算术逻辑单元,简称ALU,具有组内并行进位链,提供了辅助函数G,P供组间进位链使用。,四、运算器举例,例:用74181和74182

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号