第四章运算方法和运算器优秀课件.ppt
《第四章运算方法和运算器优秀课件.ppt》由会员分享,可在线阅读,更多相关《第四章运算方法和运算器优秀课件.ppt(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章运算方法和运算器第1页,本讲稿共49页第4章运算方法和运算器计算机中的运算包括算术运算和逻辑运算两大类。算术运算是指带符号数的加法、减法、乘法和除法运算。由于在计算机中数值有定点和浮点两种表示方式,因此算术运算应有定点数的算术运算和浮点数的算术运算之分。逻辑运算是指不考虑进位“位对位”的运算,参加逻辑运算的操作数,常被称作逻辑数。一般来说,逻辑数是不带符号的整数,广义的逻辑运算可定义为非算术运算。本章主要讨论各种运算的运算方法及其实现。运算器就是计算机中完成各种运算的一个必不可少的重要部件。4.1定点加减法运算4.2定点乘法运算4.3定点除法运算4.4浮点运算的基本思想4.5运算器的基本
2、结构及分类4.6浮点运算器基本思路4.7小结第2页,本讲稿共49页4.1定点加减法运算4.1.1补码加、减法运算第3页,本讲稿共49页4.1 定点加减法运算第4页,本讲稿共49页4.1定点加减法运算第5页,本讲稿共49页4.1定点加减法运算4.1.2反码加、减法运算对于反码加、减法运算有如下的公式:第6页,本讲稿共49页4.1定点加减法运算第7页,本讲稿共49页4.1定点加减法运算第8页,本讲稿共49页4.1定点加减法运算第9页,本讲稿共49页4.1定点加减法运算4.1.3定点加、减法中的溢出问题所谓“运算溢出”是指运算结果大于机器所能表示的最大正数或者小于机器所能表示的最小负数,这就是说,运
3、算溢出只对带符号数的运算有效。下面举例说明补码加法运算中什么情况下会产生运算溢出。【例4-10】两个正数相加【例4-11】两个负数相加第10页,本讲稿共49页4.1定点加减法运算常用的判定溢出方法有以下三种:第11页,本讲稿共49页4.1定点加减法运算第12页,本讲稿共49页4.1定点加减法运算第13页,本讲稿共49页4.1定点加减法运算4.1.4加法器计算机中的加、减、乘、除四则运算,都是在加法器的基础上再辅之以适当的电路来实现的。因此,加法运算电路是计算机中最基本的运算电路。本节先介绍加法运算的核心部件半加单元和全加单元。1.半加单元不考虑进位输入时,两数码、相加称为半加。图4-1(a)是
4、半加单元的真值表。由此表可以得出半加和的表达式如下:第14页,本讲稿共49页4.1定点加减法运算第15页,本讲稿共49页4.1定点加减法运算第16页,本讲稿共49页4.2定点乘法运算4.2.1原码乘法运算及原码乘法器首先要给原码乘法下个定义:“符号位单独运算,将两个操作数的数码位相乘,最后给乘积冠以正确符号”称作原码乘法。从最低位开始,每次取一位乘数与被乘数相乘,最后累加结果,称作“原码一位乘法”。原码一位乘法的操作过程与十进制乘法运算的过程很类似,下面通过一个具体例子来说明。第17页,本讲稿共49页4.2定点乘法运算第18页,本讲稿共49页4.2定点乘法运算这是二进制乘法的手算过程。这一过程
5、如果在计算机中实现,存在两个问题:其一是两个n位数相乘,需要2n位的加法器,这不合算;其二是n此部分积一次累加,实现有困难,而这两个问题只需要操作上稍微改动就可以得到满意的解决。我们首先假设被乘数与乘数为N+1位的原码,分别为:第19页,本讲稿共49页4.2定点乘法运算 在计算机中实现上述乘法过程的具体做法是:每得到一次部分积,立即与上次部分积相加,然后将结果右移一位,待n次的“相加右移”操作结束,乘法运算过程也告结束。用递推公式描述如下:第20页,本讲稿共49页4.2定点乘法运算我们还用上面的这个例子,在计算机内实现原码一位乘法的操作过程如下:第21页,本讲稿共49页4.2定点乘法运算 可以
6、看出,上面的例子中经过四次相加右移的操作,在粗黑线左方可得到正确的运算结果,最后给它冠以正确的符号“1”,所以 从上述过程来看,两个n位带符号数相乘需要一个n+1位加法器。并且需要两个n+1位寄存器,操作前分别存放部分积和乘数Y,操作后分别存放最后乘积的高n位和低n位,并要求这两个寄存器能连接起来一起进行右移操作。第22页,本讲稿共49页4.2定点乘法运算 4.2.2 补码乘法运算及补码乘法器 “补码乘法”是指采用操作数的补码进行乘法运算,最后乘积仍为补码,能自然得到乘积的正确符号。从乘数的最低位开始,每次取一位乘数与被乘数相乘,经过(n+1)次“相加右移”操作完成乘法运算的过程被称为“补码一
7、位乘法”。第23页,本讲稿共49页4.2定点乘法运算第24页,本讲稿共49页4.2定点乘法运算第25页,本讲稿共49页4.2定点乘法运算第26页,本讲稿共49页4.2定点乘法运算第27页,本讲稿共49页4.2定点乘法运算第28页,本讲稿共49页4.2定点乘法运算第29页,本讲稿共49页4.2定点乘法运算第30页,本讲稿共49页4.2定点乘法运算第31页,本讲稿共49页4.2定点乘法运算第32页,本讲稿共49页4.3 定点除法运算 定点除法运算与定点乘法运算类似,也有原码除法和补码除法之分。本节先讨论原码除法运算。N位原码除法是指被除数为2n位,除数、商数和余数均为n位。在实际的运算中,如果被除
8、数也是n位,则需扩展为2n位后再进行运算。原码除法运算有恢复余数法和不恢复余数法(加减交替法)之分。第33页,本讲稿共49页4.3 定点除法运算4.3.1恢复余数法 恢复余数法的计算与手算过程很类似。两个原码数相除,商的符号为两数符号的异或值,数值则为两数绝对值相除后的结果。在计算机中,右移除数,可以通过左移被除数(余数)来替代,左移出界的被除数(余数)的最高位,对运算不会产生任何影响。另外,上商0还是1,用做减法判断结果的符号为正还是负。当差为负时,上商为0,同时还应该把除数再加到差上去,恢复余数为原来的正值之后再将其左移一位。若减得的差为0或为正值,就没有恢复余数的操作。上商为1,余数左移
9、一位。第34页,本讲稿共49页4.3 定点除法运算4.3.2不恢复余数法 不恢复余数法是对恢复余数法的一种修正。当某一次得的差值(余数)为负时,不是恢复它,而是继续求下一位商,但用加上除数(+Y)的办法来取代(Y)操作,其他操作依然不变,和恢复余数法是一样的。第35页,本讲稿共49页4.3 定点除法运算 由此可得不恢复余数法的计算规则:当余数为正时,商上1,求下一位商的办法,是余数左移一位,再减去除数;当余数为负时,商上0,求下一位商的办法,是余数左移一位,再加上除数。但若最后一次上商为0,而又得到正确余数,则在这最后一次仍需恢复余数。第36页,本讲稿共49页4.4 浮点运算的基本思想4.4.
10、1浮点数加减法的运算规则 前面已经讲过,浮点数通常被写成X=Mx2Ex 的形式,其中Mx是该浮点数的尾数,一般为绝对值小于1的规格化的二进制小数,在 计算机中通常使用补码或原码的形式表示。Ex为该浮点数的阶码,一般为二进制整数,在计算机中多用补码或移码表示。假设有两个浮点数:X=Mx2Ex,Y=My2Ey 要完成XY运算,通常需要以下几个步骤:第37页,本讲稿共49页4.4 浮点运算的基本思想1对阶操作 两浮点数进行加减,首先要看两数的阶码是否相同,也就是看两数的小数点位置是否对齐。若二数阶码相同,表示小数点是对齐的,就可以进行尾数的加减运算。反之,若二数阶码不同,表示小数点位置没有对齐,此时
11、必须使二数阶码相同,这个过程称为“对阶”。要进行对阶,首先应求出两数阶码Ex和Ey之差,即E=Ex-Ey 若E=0,表示两数阶码相等,即Ex=Ey;若ExEy,则需要通过尾数的移动以改变Ex或Ey,使之相等。原则上,既可以通过Mx移位以改变Ex来达到Ex=Ey,也可以通过My移位以改变Ey来实现Ex=Ey。但是,由于浮点表示的数多是规格化的,尾数左移会引起最高有效位的丢失,造成很大误差。尾数右移虽引起最低有效位的丢失,但造成的误差较小。基于这种考虑,对阶操作规定使尾数右移,尾数右移后阶码作相应增加。因此,在进行对阶时,总是使小阶向大阶看齐,即小阶的尾数向右移位(相当于小数点左移)每右移一位,其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 运算 方法 运算器 优秀 课件
限制150内