第2章运算方法和运算器 (2)精选文档.ppt
《第2章运算方法和运算器 (2)精选文档.ppt》由会员分享,可在线阅读,更多相关《第2章运算方法和运算器 (2)精选文档.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2章运算方法和运算器章运算方法和运算器(2)本讲稿第一页,共四十三页第二章 运算方法和运算器(2)223 定点加法、减法运算定点加法、减法运算231 补码加法补码加法q补码加法公式:补码加法公式:X补补+Y补补=X+Y补补 (mod 2)本讲稿第二页,共四十三页第二章 运算方法和运算器(2)3q补码加法的特点:补码加法的特点:v符号位要作为数的一部分一起参加运算。符号位要作为数的一部分一起参加运算。v要在模要在模2的意义下相加,即超过的意义下相加,即超过2的进位要丢掉。的进位要丢掉。222 补码减法补码减法q数用补码表示时,减法运算的公式为:数用补码表示时,减法运算的公式为:vXY补补=X
2、补补-Y补补 X补补+-Y补补 (mod 2)v从从Y补补求求-Y补补的法则:的法则:对对Y补补包括符号位包括符号位“求反且最末位加求反且最末位加1”。本讲稿第三页,共四十三页第二章 运算方法和运算器(2)4本讲稿第四页,共四十三页第二章 运算方法和运算器(2)5233 溢出概念与检测方法溢出概念与检测方法q在定点小数机器中,数的表示范围为在定点小数机器中,数的表示范围为|x|1。在运算过程中如出现大于。在运算过程中如出现大于1的现象,称为的现象,称为“溢出溢出”。q在定点机中,正常情况下溢出是不允许的。在定点机中,正常情况下溢出是不允许的。v两个正数相加,结果大于机器所能表示的最大正数,称为
3、上溢。两个正数相加,结果大于机器所能表示的最大正数,称为上溢。如如+0.1011和和+0.1001相加得:相加得:1.0100v两个负数相加,结果小于机器所能表示的最小负数,称为下溢。两个负数相加,结果小于机器所能表示的最小负数,称为下溢。如如-0.1101和和-0.1011相加得:相加得:0.1000q判断判断“溢出溢出”是否发生,可采用两种检测方法。是否发生,可采用两种检测方法。v双符号位法双符号位法又称为又称为“变形补码变形补码”或或“模模4补码补码”。可使模可使模2补码所能表示的数的范围扩大一倍。补码所能表示的数的范围扩大一倍。数的变形补码定义为:数的变形补码定义为:本讲稿第五页,共四
4、十三页第二章 运算方法和运算器(2)6或用同余式表示为或用同余式表示为x补补4+x (mod 4)下式也同样成立:下式也同样成立:x补补+y补补x+y补补 (mod 4)为了得到两数变形补码之和等于两数和的变形补码,同样必须:为了得到两数变形补码之和等于两数和的变形补码,同样必须:(1)两个符号位都看做数码一样参加运算。两个符号位都看做数码一样参加运算。(2)两数进行以两数进行以4为模的加法,即最高符号位上产生的进位要丢掉。为模的加法,即最高符号位上产生的进位要丢掉。本讲稿第六页,共四十三页第二章 运算方法和运算器(2)7采用变形补码后:采用变形补码后:任何小于任何小于 1的正数,两个符号位都
5、是的正数,两个符号位都是“0”,即,即00.x1x2xn任何大于任何大于-1的负数,两个符号位都是的负数,两个符号位都是“1”,即,即11.x1x2xn如果两个数相加后,其结果的符号位出现如果两个数相加后,其结果的符号位出现“01”或或“10”两种组合时,两种组合时,表示发生溢出。表示发生溢出。这是因为两个绝对值小于这是因为两个绝对值小于1的数相加,其结果不会大于或等于的数相加,其结果不会大于或等于2,所,所以最高符号位永远表示结果的正确符号。以最高符号位永远表示结果的正确符号。本讲稿第七页,共四十三页第二章 运算方法和运算器(2)8本讲稿第八页,共四十三页第二章 运算方法和运算器(2)9由此
6、,我们可以得出如下结论:由此,我们可以得出如下结论:(1)当以模当以模4补码运算,运算结果的补码运算,运算结果的二符号位相异时,表示溢出;相同时,二符号位相异时,表示溢出;相同时,表示未溢出表示未溢出。故溢出逻辑表达式为:故溢出逻辑表达式为:VSf1Sf2,其中,其中Sf1和和Sf2分别为最高符分别为最高符号位和第二符号位。号位和第二符号位。此逻辑表达式可用异或门实现。此逻辑表达式可用异或门实现。(2)模模4补码相加的结果,不论溢出与否,最高符号位始终指示正确的符补码相加的结果,不论溢出与否,最高符号位始终指示正确的符号。号。v单符号位法。单符号位法。由于溢出逻辑表达式为由于溢出逻辑表达式为V
7、Cf C0,其中,其中Cf为符号位产生的进位,为符号位产生的进位,C0为最为最高有效位产生的进位。高有效位产生的进位。此逻辑表达式也可用此逻辑表达式也可用异或门异或门实现。实现。在定点机中,当运算结果发生溢出时,机器通过逻辑辑电路自动检查出在定点机中,当运算结果发生溢出时,机器通过逻辑辑电路自动检查出这种溢出,并进行中断处理。这种溢出,并进行中断处理。本讲稿第九页,共四十三页第二章 运算方法和运算器(2)10234 基本的二进制加法减法器基本的二进制加法减法器q图图(a)示出了补码运算的二进制加法减法器逻辑结构图。示出了补码运算的二进制加法减法器逻辑结构图。v由图看到,由图看到,n个个1位的全
8、加器位的全加器(FA)可级联成一个可级联成一个n位的行波进位加减器。位的行波进位加减器。本讲稿第十页,共四十三页第二章 运算方法和运算器(2)11vM为方式控制输入线:为方式控制输入线:当当M0时,做加法时,做加法(A+B)运算;运算;当当M1时,做减法时,做减法(A-B)运算运算在在M1时,做减法时,做减法(A-B)运算情况下,运算情况下,A-B运算转化成运算转化成A补补+-B补补运算,运算,求补过程由求补过程由B+1来实现。来实现。因此,图中最右边的全加器的起始进位输入端被连接到功能方式线因此,图中最右边的全加器的起始进位输入端被连接到功能方式线M上,做减法时上,做减法时M1,相当于在加法
9、器的最低位上加,相当于在加法器的最低位上加1。另外,图中左边还表示出单符号位法的溢出检测逻辑:当另外,图中左边还表示出单符号位法的溢出检测逻辑:当Cn=Cn-1时,运时,运算无溢出;而当算无溢出;而当CnCn-1时,运算有溢出,经异或门产生溢出信号。时,运算有溢出,经异或门产生溢出信号。本讲稿第十一页,共四十三页第二章 运算方法和运算器(2)12v两个二进制数字两个二进制数字Ai,Bi和一个进位输入和一个进位输入Ci相加,产生一个和输出相加,产生一个和输出Si,以及一个,以及一个进位输出进位输出Ci+1。下表中列出一位全加器进行加法运算的输入输出真值表。下表中列出一位全加器进行加法运算的输入输
10、出真值表。v根据表中所示的真值表,三个输入端和两个输出端可按如下逻辑方程进行联根据表中所示的真值表,三个输入端和两个输出端可按如下逻辑方程进行联系:系:SiAi Bi Ci Ci+1AiBi+BiCi+CiAi 本讲稿第十二页,共四十三页第二章 运算方法和运算器(2)13v按此表达式组成的一位全加器示于图按此表达式组成的一位全加器示于图(b)。Si的时间延迟为的时间延迟为6T(每级异或门延迟每级异或门延迟3T),Ci+1的时间延迟为的时间延迟为5T,其中,其中T被定义为被定义为相应于单级逻辑电路的单位门延迟。相应于单级逻辑电路的单位门延迟。T通常采用一个通常采用一个“与非与非”门或一个门或一个
11、“或非或非”门的时间延迟来作为度门的时间延迟来作为度量单位。在多级开关电路的时间量单位。在多级开关电路的时间延迟可以用延迟可以用“与非与非”门的级数或门的级数或者者T的数目来度量。的数目来度量。本讲稿第十三页,共四十三页第二章 运算方法和运算器(2)14v例如计算一个例如计算一个n位的行波进位加法器的时间延迟。位的行波进位加法器的时间延迟。假如采用图假如采用图(b)所示的一位全加器并考虑溢出检测,那么所示的一位全加器并考虑溢出检测,那么n位行波进位加位行波进位加法器的延迟时间法器的延迟时间ta为:为:tan2T+9T(2n+9)T其中:其中:9T为最低位上的两级为最低位上的两级“异或异或”门再
12、加上溢出门再加上溢出“异或异或”门的总时门的总时间间2T为每级进位链的延迟时间。为每级进位链的延迟时间。当不考虑溢出检测时,有:当不考虑溢出检测时,有:ta(n-1)2T+9Tta意味着加法器的输入端输入加数和被加数后,在最坏情况下加法器意味着加法器的输入端输入加数和被加数后,在最坏情况下加法器输出端得到稳定的求和输出所需的最长时间。显然这个时间越小越输出端得到稳定的求和输出所需的最长时间。显然这个时间越小越好。好。q注意:加数、被加数、进位与和数都是用电平来表示的,因此,所谓注意:加数、被加数、进位与和数都是用电平来表示的,因此,所谓稳定的求和输出,就是指稳定的电平输出。稳定的求和输出,就是
13、指稳定的电平输出。本讲稿第十四页,共四十三页第二章 运算方法和运算器(2)15235 十进制加法器十进制加法器q十进制加法器可由十进制加法器可由BCD码码(二二十进制码十进制码)来设计,它可以在二进制加来设计,它可以在二进制加法器的基础上加上适当的法器的基础上加上适当的“校正校正”逻辑来实现,该校正逻辑可将二进逻辑来实现,该校正逻辑可将二进制的制的“和和”改变成所要求的十进制格式。改变成所要求的十进制格式。qn位位BCD码行波式进位加法器的一般结构如图码行波式进位加法器的一般结构如图(a)所示。所示。v它由它由n级组成,每一级将一对级组成,每一级将一对4位的位的BCD数字相加,并通过一位进位线
14、与其相数字相加,并通过一位进位线与其相邻级连接。邻级连接。本讲稿第十五页,共四十三页第二章 运算方法和运算器(2)16v而每一位十进制数字的而每一位十进制数字的BCD加法器单元的逻辑结构示于图加法器单元的逻辑结构示于图(b)。本讲稿第十六页,共四十三页第二章 运算方法和运算器(2)17q在十进制运算时,当相加二数之和大于在十进制运算时,当相加二数之和大于9时,便产生进位。可是用时,便产生进位。可是用BCD码完成十进制数运算时,当和数大于码完成十进制数运算时,当和数大于9时,必须对和数进行加时,必须对和数进行加6修修正。这是因为,采用正。这是因为,采用BCD码后,在二数相加的和数小于等于码后,在
15、二数相加的和数小于等于9时,十时,十进制运算的结果是正确的;而当相加的和数大于进制运算的结果是正确的;而当相加的和数大于9时,结果不正确,时,结果不正确,必须加必须加6修正后才能得出正确的结果。修正后才能得出正确的结果。本讲稿第十七页,共四十三页第二章 运算方法和运算器(2)1824 定点乘法运算定点乘法运算241 原码并行乘法原码并行乘法1人工算法与机器算法的同异性人工算法与机器算法的同异性q在定点计算机中,两个原码表示的数相乘的运算规则是:在定点计算机中,两个原码表示的数相乘的运算规则是:v乘积的符号位由两数的符号位按异或运算得到乘积的符号位由两数的符号位按异或运算得到v乘积的数值部分则是
16、两个正数相乘之积。乘积的数值部分则是两个正数相乘之积。q设设n位被乘数和乘数用定点小数表示位被乘数和乘数用定点小数表示(定点整数也同样适用定点整数也同样适用)被乘数被乘数 x原原xfxn-1x1x0乘数乘数 y原原yfyn-1y1y0乘积乘积 z原原(xf Yf)+(0.xn-1x1x0)(0.yn-1y1y0)v式中,式中,xf为被乘数符号,为被乘数符号,yf为乘数符号。为乘数符号。本讲稿第十八页,共四十三页第二章 运算方法和运算器(2)19q其中:其中:v乘积符号的运算法则是:乘积符号的运算法则是:同号相乘为正,异号相乘为负。同号相乘为正,异号相乘为负。由于被乘数和乘数和符号组合只有四种情
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章运算方法和运算器 2精选文档 运算 方法 运算器 精选 文档
限制150内