计算机系统组成与结构ppt第8章

计算机系统组成与结构ppt第8章

ID:25021953

大小:880.00 KB

页数:91页

时间:2018-11-17

计算机系统组成与结构ppt第8章_第1页
计算机系统组成与结构ppt第8章_第2页
计算机系统组成与结构ppt第8章_第3页
计算机系统组成与结构ppt第8章_第4页
计算机系统组成与结构ppt第8章_第5页
资源描述:

《计算机系统组成与结构ppt第8章》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、第八章运算方法计算机组成与结构1湖南大学计算机与通信学院本章我们详细说明几种常用数据格式的算术运算算法和它们的硬件实现。包括定点数表示及其加、减、乘、除过程和硬件实现,二—十进制(或BCD)码的格式和操作。接下来讨论一些提高算术操作性能的专用硬件,包括流水线、查找表、华莱士树。最后介绍浮点数的格式和它们的算术操作。包括浮点数的格式,性质,以及加、减、乘、除过程和硬件实现,还有IEEE754浮点数标准。执行算术和逻辑运算的指令以及微操作是任何CPU的一个必不可少的重要部分。计算机组成与结构2湖南大学计算机与通信学院8.1无专门符号位表示法本节讨

2、论二进制数无专门符号位表示法的加、减、乘、除的基本算法以及实现这些算法的硬件。这些算法同时也是二进制数带专门符号位表示法、BCD码和浮点表示法的算术运算基础。非负数码:表示0或一个正数。n位非负数码的数值范围为0(所有位都为0)到2n-1(所有位都为1)。2的补码(简称补码):既能表示正数又能表示负数。n位数的数值范围为-2n-1到2n-1-1。当最高位为1时表示负数,最高位为0时表示正数(包括0)。正数(包括0)的补码与非负数码相同,负数的补码为其绝对值的2的补码,等于它的绝对值按位取反(该数的1的补码,简称为反码),加1。有两种常用的无专

3、门符号位表示法:计算机组成与结构3湖南大学计算机与通信学院例如,求-5的4位补码表示,首先求出它的绝对值5(0101),产生反码值1010,再加1得补码1011。下表列出了8位二进制数的非负数码和补码表示的数值。表8.1无符号表示的数值计算机组成与结构4湖南大学计算机与通信学院8.1.1加法和减法加法直接采用二进制加法实现,硬件中通过使用一个并行加法器来实现,如下图所示。X和Y是8位寄存器,该电路实现微操作ADD:X←X+Y。只要结果在正常范围内(对非负数码而言为0到2n-1,对2的补码而言为-2n-1到2n-1-1),该电路就能得到正确的结

4、果。图8.1微操作X←X+Y的实现计算机组成与结构5湖南大学计算机与通信学院当结果不能表示为一个8位数值时就会导致溢出:例如,非负数码加法255+1,即11111111+00000001,直接加得100000000,有9位,不能存于8位寄存器中。并行加法器产生额外的进位输出,它用来标志算术溢出。在非负数码中,这个进位能置溢出标志,它提示系统产生了溢出,所得结果不完全正确,系统应进行相应的结果修复处理或错误处理。在补码中,判断溢出不但要检查进位输出,还要检查结果最高位的进位输入。如果这两者相等,那么不产生溢出,否则产生溢出。见下图:计算机组成与

5、结构6湖南大学计算机与通信学院图8.2补码加法的溢出产生在(a)和(c)中最高位的进位输入和进位输出相等,不产生溢出;而在(b)和(d)中两者不等,产生溢出。计算机组成与结构7湖南大学计算机与通信学院减法可以转换成加法,即X–Y通过执行X+(-Y)来实现。首先将Y转换成–Y的补码,再将–Y的补码与X的补码相加即可得X–Y的补码:[X–Y]补=[X]补+[-Y]补左图给出了执行微操作SUB:X←X–Y的一种硬件实现。图8.3微操作X←X–Y的实现计算机组成与结构8湖南大学计算机与通信学院对于非负数码,减法的结果不会比2n-1大,但可能比0小。例

6、如,1–2执行为00000001+11111110=11111111,即255。图中(b)和(d)溢出,而(a)和(c)没有溢出。图8.4非负数码减法的溢出产生同样,补码减法也将X–Y转换成X+(–Y)来执行,而判断溢出的条件与补码加法相同。此时,如果减法(通过补码加法实现)产生了进位输出0而不是1时,则发生了溢出。计算机组成与结构9湖南大学计算机与通信学院8.1.2乘法乘法可以看成加法的重复。一个数乘以n与n个该数相加的结果相同。可以用下列算法来实现乘法x×y。z=0;FORi=1TOyDO{z=z+x}这种算法不理想,原因是速度慢、计算x

7、×y的时间不确定。我们希望不论x、y取何值,执行乘法的时间相同。x=27y=25381135546831考虑人工计算:首先,27乘以乘数y的最低位3。接着,27乘以乘数y的次低位5,结果放在前一个积的左边一位处,因为乘数5在3的左一位上。然后,27乘以2,结果进一步左移一位。最后,将所有值加在一起。8.1.2.1移位——相加算法(非负数码乘法)计算机组成与结构10湖南大学计算机与通信学院这个过程被称为移位——相加乘法。首先计算每个部分积并左移到正确位置,然后再将所有的部分积相加。对这个算法稍做修改,使得硬件实现更为简单,就可得到无符号非负数码

8、的乘法基本算法。第一个修改是每求出一个部分积后就计算和:x=27y=253811351431←计算的和546831←最终计算的和因为硬件上,二输入加法器很容易实现,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。