运算器与运算方法.ppt
《运算器与运算方法.ppt》由会员分享,可在线阅读,更多相关《运算器与运算方法.ppt(86页珍藏版)》请在三一办公上搜索。
1、第3章 运算器与运算方法,3.1 运算器基本组成3.2 算术与逻辑单元3.3 移位运算3.4 定点加、减法运算3.5 定点乘法运算3.6 定点除法运算3.7 浮点运算,3.1 运算器基本组成,一、算术逻辑运算单元ALU二、通用寄存器组三、专用寄存器四、附加的控制线路,一、算术逻辑运算单元ALU,1、ALU:运算器中完成数据算术与逻辑运算的部件。,2、ALU的基本框图:两个输入端口,一个输出端口和多个功能控制信号端。输入端口:用来输入参加运算的操作数;输出端口:用来输出运算结果。功能控制信号端:用来确定ALU所执行的处理功能等。,一、算术逻辑运算单元ALU,二、通用寄存器组,通用寄存器组:运算器
2、内设有若干通用寄存器,用于暂时存放参加运算的数据和某些中间结果。用户可以通过指令去使用这些寄存器。举例:8086的通用寄存器包括8个16位的寄存器:AX、BX、CX、DX、SP、BP、DI及SI。其中AX、BX、CX、DX在一般情况下作为通用的数据寄存器,用来暂时存放计算过程中所用到的操作数、结果或其他信息。它们还可分为两个独立的8位寄存器使用,命名为AL、AH、BL、BH、CL、CH、DL和DH。,三、专用寄存器,用来记录指令执行过程中的重要状态标记,以及提供运算前后数据的暂存缓冲等。举例:8086的暂存寄存器、标志寄存器FLAGS。有些专用寄存器对程序员是透明的,有些专用寄存器对程序员是开
3、放的。,四、附加的控制线路,3.1 运算器基本组成 结束,3.2 算术与逻辑单元,一、半加器与全加器二、串行进位与并行进位三、ALU部件,一、半加器与全加器,1、半加器2、全加器,1、半加器,(1)、半加:两个一位二进制数相加(不考虑低位的进位)。(2)、半加器:实现半加操作的电路。,1、半加器,(3)、真值表:,表中:Xi、Yi:二进制数相加;Hi:半加和;Ci:向高位的进位。真值表:将自变量的各种可能的取值组合与其因变量的值一一列出来的表格形式。,1、半加器,(4)、逻辑表达式,Ci=XiYi,逻辑表达式:用逻辑运算符将1个或多个表达式连接起来,进行逻辑运算的式子。,1、半加器,(5)、逻
4、辑图,(6)、符号表示,逻辑图:由逻辑门电路符号构成的,用来表示逻辑变量之间关系的图形称为逻辑电路图,简称逻辑图。,2、全加器,(1)、全加:考虑低位进位的加法运算。(2)、全加器:实现全加运算的电路。(3)、真值表:表中:Xi、Yi表示第i位的加数;Ci-1表示第i位的进位输入;Fi是第i位的全加和;Ci是第i位的进位输出。,2、全加器,(4)逻辑表达式:,(5)、逻辑图:,(6)、符号表示:,二、串行进位与并行进位,加数:X=Xn Xn-1X1,Y=Yn Yn-1Y1和:F=Fn Fn-1F1 进位:Ci,i=0,1,n,1、串行进位(行波进位)2、先行进位(并行进位)3、16位组间串行进
5、位加法器 4、16位组间先行进位加法器,1、串行进位(行波进位),(1)、串行进位:进位信号顺序地从低位传到高位的方法。(2)、串行进位加法器:采用串行进位的加法器。,2、先行进位(并行进位),(1)、先行进位:进位信号同时送到各位全加器的进位输入端的方法。(2)、先行进位加法器:采用先行进位的加法器。(3)、进位的产生条件:、C1的表达式:,、C2的表达式:,、C3的表达式,2、先行进位(并行进位),、C4的表达式,Ci由Xi、Yi 和C0确定。、进位传递函数:Pi=Xi+Yi。、进位产生函数:Gi=XiYi。,2、先行进位(并行进位),(4)、4位先行进位产生电路:,2、先行进位(并行进位
6、),(5)、4位先行进位加法器:,2、先行进位(并行进位),3、16位组间串行进位加法器,2、先行进位(并行进位),4、16位组间先行进位加法器,三、ALU部件,1、4位并行进位ALU 74181外特性2、4位并行进位ALU 74181功能表 3、组间串行进位16位ALU 4、组间并行进位器件74182 5、组间并行进位16位ALU,1、4位并行进位ALU集成电路74181外特性,2、4位并行进位ALU集成电路74181功能表,3、组间串行进位16位ALU,4、组间并行进位器件74182,4、组间并行进位器件74182,5、组间并行进位16位ALU,3.2 算术与逻辑单元 结束,3.3 移位运
7、算,一、算术移位二、逻辑移位,一、算术移位,1、操作:寄存器中(有限位)带符号数的移位,移位时,符号位保持不变,仅数量变化。左移:x=2x 右移:x=1/2x 2、规则:,一、算术移位,提问:为什么补码左移同原码,右移同反码?答:补码由低位到高位出现第一个“1”的左边各位与反码相同,从“1”开始右边各位与原码相同。左移时,空位出现在低位,则添补的代码与原码相同;右移时,空位出现在高位,则添补的代码与反码相同。例如:x原=110100,x补=101100,x反=101011,3、举例:(5位寄存器)x原=0 0110 左移x原=0 1100 右移x原=0 0011 6 12 3,一、算术移位,x
8、原=1 0110 左移x原=1 1100 右移x原=1 0011x反=1 1001 左移x反=1 0011 右移x反=1 1100 x补=1 1010 左移x补=1 0100 右移x补=1 1101-6-12-3x原=0 1001 左移x原=0 0010 右移x原=0 0100 9 2 4,一、算术移位,4、溢出与舍入:(1)、对于正数:左移最高位丢1:溢出(出错);右移最低位丢1:舍入(影响精度)(2)、对于负数:1)、原码:左移最高位丢1:溢出(出错);右移最低位丢1:舍入(影响精度)2)、反码:左移最高位丢0:溢出(出错);右移最低位丢0:舍入(影响精度)3)、补码:左移最高位丢0:溢出
9、(出错);右移最低位丢1:舍入(影响精度),二、逻辑移位,寄存器中整组数据进行移位,空位补0。,3.3 移位运算 结束,3.4 定点加、减法运算,一、原码定点加、减法二、补码定点加、减法,一、原码定点加、减法,1、运算规则:(1)、符号:比较两操作数的符号,确定是“求和”,还是“求差”。(2)、求和:两操作数的数值位相加。如数值最高位产生进位,则结果溢出。(3)、求差:被减数的数值位加上减数的数值位的补码。1)、没有产生进位:符号位采用被减数的符号取反,数值位取补。2)、产生进位:符号位采用被减数的符号,数值位不变。,一、原码定点加、减法,2、举例:例1:已知 X原=10011、Y原=1101
10、0,计算X+Y原。解:1)、符号:同号相加,所以是“求和”。和的符号位为1。2)、求和:0011+1010=1101,无进位,没有溢出。所以 X+Y原=11101,一、原码定点加、减法,例2:已知 X原=10011、Y原=11010,计算X-Y原。解:1)、符号:同号相减,所以是“求差”。2)、差的数值位:0011+(1010)补=0011+0110=1001,最高数值位没有产生进位,求补:(1001)补=0111 3)、差的符号位:采用X原的符号位取反,为0 所以 X-Y原=00111,二、补码定点加、减法,1、补码加、减法运算规则:和:X+Y补=(X补+Y 补)差:X-Y补=(X补+-Y
11、补)注意:(1)、加、减法运算统一采用加法来处理;(2)、符号位(最高位)和数值位一起参与求和运算;(3)、符号位也在求和运算中直接得出。,二、补码定点加、减法,2、举例:例1、已知X补=01001、Y补=11011,求:X+Y补和X-Y补 解:(1)、-Y补=00101(2)、X+Y补=(X补+Y补)=(01001+11011)=00100(3)、X-Y补=(X补+-Y补)=(01001+00101)=01110,二、补码定点加、减法,例2:已知X补=01010,Y补=01010,求X+Y补解:X+Y补=(01010+01010)=10100 溢出 运算结果(两个符号相同的数相加)超出数的表
12、示范围(-2n-12n-1-1)将产生溢出。例3:已知X补=10010,Y补=00100,求X-Y补。解:X-Y补=(10010+11100)=01110 溢出,二、补码定点加、减法,3、溢出判断:(1)、单符号法:,式中:Xf、Yf分别为X、Y的符号位;Sf为运算结果的符号位。V=0:无溢出;V=1有溢出。(2)、进位判别法:,式中:Cn-1为最高数值位向符号位的进位值;Cn为符号位产生的进位输出值。V=0:无溢出;V=1:有溢出。,二、补码定点加、减法,(3)、双符号法(变形补码法):运算结果:00:正;11:负;01:正向溢出;10:负向溢出。,式中:Sf1、Sf2分别为运算结果的第一(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 运算器 运算 方法
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5849697.html