




已阅读5页,还剩111页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-,1,第二章运算方法和运算器,-,2,第二章运算方法和运算器,掌握数据的两种表示方法:定点数和浮点数掌握两种数据表示所能表示数值的范围掌握定点加/减法,并会判断溢出理解定点乘法原理,掌握阵列乘法器的工作原理理解定点除法及其实现原理掌握ALU的构成,扩展掌握浮点加减法了解浮点乘除法,本章要点,-,3,问题1:为什么要研究数据表示问题(重要性)?,2.1数据的表示方法,数据表示是计算机硬件和软件的接口。了解计算机中数据表示是了解计算机各主要部件工作原理的必要基础。,-,4,问题2:什么叫数据表示?计算机中有哪些类型的表示方法?,2.1数据的表示方法,数据表示指能由计算机硬件直接识别的数据类型,即可以用计算机硬件直接表示出来,并能由计算机指令直接调用该数据类型。计算机中常用的数值数据的表示方法有:定点数、浮点数.,-,5,定点数的含义:小数点位置固定的数据表示方法。常见的两种定点数:(通常将数据表示成纯小数或纯整数)定点小数小数点固定于符号位之后。格式为:Dn-1Dn-2D1D0定点整数小数点固定于最低位之后。格式为:Dn-1Dn-2D1D0,2.1.1数值数据的定点表示方法,【注意】:小数点均为隐含表示。,一、什么是定点数,-,6,1.定点小数原码表示X0X1【表示形式】:X原=1-X-1X0,2.1.1数值数据的定点表示方法,二、定点小数表示方法,假定共有n+1位二进制表示数据(1位符号位,n位数值位),-,7,【例2.1.1】:求X=-0.1001的原码定点格式?,定点小数原码表示方法举例,【表示范围】:n+1位原码表示的定点小数的范围为:0X1-2-n,解:X的原码定点格式为:11001,-,8,2.定点小数反码表示X0X1【表示形式】:X反=2+X-2-n-1X0,定点小数表示方法,-,9,【例2.1.2】:求X=-0.1001反码定点格式?,定点小数反码表示方法举例,解:X的反码定点格式为:10110,【表示范围】:n+1位反码表示的定点小数的范围为:0X1-2-n,-,10,3.定点小数补码表示X0X1【表示形式】:X补=2+X-1X0,定点小数表示方法,-,11,【例2.1.2】:求X=-0.1001补码定点格式?,定点小数补码表示方法举例,解:X的补码定点格式为:10111,【表示范围】:n+1位补码表示的定点小数的范围为:正数:0X1-2-n,负数:-1X0,-,12,1.定点整数原码表示X0X2n【表示形式】:X原=2n-X-2nX0,2.1.1数值数据的定点表示方法,三、定点整数表示方法,假定共有n+1位二进制表示数据(1位符号位,n位数值位),-,13,【例2.1.4】:求X=-10101的定点原码表示形式,定点整数原码表示方法举例,解:X的定点原码表示为:110101,【表示范围】:n+1位原码表示的定点整数范围为:0X2n-1,-,14,2.定点整数反码表示X0X2n【表示形式】X反=2n+1-1+X2nX0,定点整数表示方法,-,15,【例2.1.5】:求X=-10101的定点反码表示形式,解:X的定点反码表示为:101010,【表示范围】:n+1位反码表示的定点整数范围为:0X2n-1,定点整数反码表示举例,-,16,3.定点整数补码表示X0X2n【表示形式】X补=2n+1+X-2nX0,定点整数表示,-,17,【例2.1.6】:求X=-10101的定点补码表示形式,解:X的定点补码表示为:101011,【表示范围】:n+1位补码表示的定点整数范围为:正数:0X2n-1,负数:-2nX0,定点整数补码表示举例,-,18,4.定点整数的移码表示方法移码:是定点整数的又一种编码形式,主要用来表示浮点数的阶码。【表示形式】:X移=2+X(2X-2)注:n为数据的位数,定点整数表示,-,19,【表示范围】:n+1位移码表示的定点整数范围为:正数:0X2n-1,负数:-2nX0,【例2.1.7】:求X=-10101的定点移码表示形式,解:X移25(10101)10000010101001011,定点整数移码表示举例,-,20,【例2.1.8】已知X=-0.101101,Y=+101101,则:X原=1.101101,Y原=0101101X反=1.010010,Y反=0101101X补=1.010011,Y补=0101101Y移=1101101,定点数表示举例,-,21,【例2.1.9】某计算机字长32位,符号位占一位,数值位31位,问:(1)定点补码整数表示时,最大正数是多少,最小负数是多少?(2)定点补码小数表示时,最大正数是多少,最小负数是多少?,2.1.1,定点数表示举例,解:定点补码整数表示时:最大正数0111111=2311最小负数1000000=231定点补码小数表示时:最大正数0111111=1231,最小负数1000000=-1。,-,22,1.任何一个数据N都能写成一般形式N=REM其中:N:要表示的浮点数;R(Radix):基数,常取2;E(Exponent):阶码,一般为定点整数;M(Mantissa):尾数,一般为定点小数;,2.1.2数据的浮点表示方法,一、什么是浮点表示,因计算机中采用二进制来表示数据,因此在数据表示时R可以隐含表示,这样只将阶码和尾数合起来就可以表示一个数据,这种表示形式就是浮点表示形式。,-,23,2.1.2数据的浮点表示方法,二、浮点数的表示形式,S:表示数据的符号E:表示阶码,常用补码,移码表示M:尾数的数值部分,常用原码或补码表示,-,24,2.1.2数据的浮点表示方法,二、浮点数的表示形式,举例:请用浮点数表示数N=-5.125,阶码和尾数都用补码表示。解:N=(101.001)2=-0.10100123则其浮点形式为:1011010111,?有其它表示形式吗?,-,25,若上述浮点数中尾数M在如下范围内1/R|M|1(1/2|M|0(和被除数的符号相同),则:Ri=2Ri-1-Y若Ri-10(和被除数的符号相反),则:Ri=2(Ri-1+Y)-Y=2Ri-1+Y,二、两类除法原理,-,76,输入变量:Ai,Bi,Ci,P(M)输出变量:Si,Ci+1,Bi,P(M)输入输出关系:Si=Ai(BiP)CiCi+1=AiBi+BiCi+CiAi=(Ai+Ci)(BiP)+CiAi,2.4.2并行除法器,三、并行除法器,1.可控加/减法单元,-,77,可控加/减法单元,-,78,特点:1)运算的两个数是原码,符号位单独处理。2)商的符号位为除数和被除数符号位的异或,商的位数和除数的位数保持一致,3)余数的符号位和被除数一致,如果最后一次的余数和被除数符号不同,则加上除数修正.,2、原码不恢复余数的阵列除法器,2.4.2并行除法器,-,79,不恢复余数的阵列除法器,-,80,移位1.01010减y1.000010.01011商1移位0.10110减y1.000011.10111商0恢复余数0.111110.10110商=0.10110,余数=0.101102-5,举例,例2.4.1:已知x=0.10110,y=0.11111,求xy,x补=0.10110,y补=0.11111,-y补=1.00001,-,81,2.5多功能算术/逻辑运算单元,仍然以FA为主体,为增加功能而加进函数发生器,为提高速度而使用先行(并行)进位逻辑。按下页图示,原FA逻辑表达式变为ALU的逻辑表达式:Fi=XiYiCn+iCn+i+1=XiYi+YiCn+i+Cn+iXi,一、基本思想,-,82,ALU逻辑图,-,83,若将Yi和Xi看作是P47页表2.4中所列的Ai,Bi和S0,S1,S2,S3的函数,则对串行进位和并行进位有如下的结论成立:串行进位表达式并行进位表达式,二、ALU逻辑表达式,2.5多功能算术/逻辑运算单元,-,84,1、串行进位表达式Cn+i+1=Yi+XiCn+iCn+1=Y0+X0CnCn+2=Y1+X1Cn+1Cn+3=Y2+X2Cn+2Cn+4=Y3+X3Cn+3,二、ALU逻辑表达式,-,85,2、并行进位将i=0,1,2,3分别代入Cn+i+1=Yi+XiCn+i中即得:Cn+1=Y0+X0CnCn+2=Y1+X1Cn+1=Y1+Y0X1+X0X1CnCn+3=Y2+X2Cn+2=Y2+Y1X2+Y0X1X2+X0X1X2CnCn+4=Y3+X3Cn+3=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3Cn以上式子表明进位是并行的,二、ALU逻辑表达式,-,86,若令:Fi=XiYiCn+i,利用并行进位可同时得到F0、F1、F2、F3。依据此结论,我们可以设计任何一个4位的并行进位的ALU。74LS181便是一个4位的并行进位的ALU.电路图见P48。,结论,-,87,三、74181算术逻辑运算器逻辑图,2.5多功能算术/逻辑运算单元,-,88,为了对多片4位ALU进一步扩展,对进位最后一项Cn+4分两部分处理引出两个信号:G(进位发生输出),P(进位传送输出)令G=Y3+Y2X3+Y1X2X3+Y0X1X2X3P=X0X1X2X3则Cn+4=Y3+Y2X3+Y1X2X3+Y0X1X2X3+X0X1X2X3CnCn+4=G+PCn,Cn+4信号的特殊处理,-,89,74181芯片引脚图,-,90,例2.5.1:请用四片74181ALU组成16位的并行ALU。解决方法:四片74181串联即可,74181应用举例,-,91,片内并行,片间串行,-,92,两级先行进位的ALU:组内并行,组间并行【方法】由74181的电路指导,任一片74181的最高进位表达式Cn+4=G+PCn为了区别各片的G和P,将第一片ALU的G和P记为G0和P0,第二片为G1和P1,第三片为G2和P2,第四片为G3和P3。则各个芯片的进位信号为:,四、两级先行进位的ALU,2.5多功能算术/逻辑运算单元,-,93,1#:C(n+x)=C(n+4)=G0+P0C02#:C(n+y)=C(n+8)=G1+P1Cn+4=G1+G0P1+P0P1C03#:C(n+z)=C(n+12)=G2+G1P2+G0P1P2+P0P1P2C04#:C(n+16)=G3+G2P3+G1P1P2+G0P1P2P3+P0P1P2P3C0由以上四个进位式可知:由G,P信号组合即可同时生成Cn+x、Cn+y、Cn+z、C(n+16).,同时也把生成Cn+x、Cn+y、Cn+z的逻辑电路叫做先行二级进位链(即74182芯片),-,94,74LS182芯片,-,95,G*,P*说明,同G,P类似:为了便于进位扩展,可以把C(n+16)=G3+G2P3+G1P1P2+G0P1P2P3+P0P1P2P3C0定义为C(n+16)=G*+P*Cn则:G*=G3+G2P3+G1P1P2+G0P1P2P3P*=P0P1P2P3,-,96,例2.5.2:请用74181和4182构成组内并行,组间也并行的16位ALU。,74182应用举例,-,97,组间并行的16位ALU,-,98,2.6.1浮点加法、减法运算,设X=RExMx,Y=REyMy为参加加/减运算的操作数(R=2),则两数参加加减运算的步骤为:1、零操作数检查2、对阶3、求和4、规格化5、舍入处理6.判断溢出,一、运算步骤,-,99,假设:X=20100.11011011,Y=2100(-0.10101100)求X+Y.1.求补:将以上两操作数表示成补码,即:X=010,0.11011011Y=100,1.01010100Ex补=00010,Ey补=00100,-Ey补=11100,2.6.1浮点加法、减法运算,二、实例,-,100,对阶:先求阶差,用减法完成。E=Ex补-Ey补=Ex补+-Ey补=00010+11100=111100ExEy,采用小阶向大阶看齐的对阶法,让小阶加上阶差的绝对值以变成大阶,同时使小阶所对应的浮点数的尾数右移阶差的绝对值位.则Ex=Ey=100,则有Mx=0.00110110(11),于是对阶结果为:X=00100,0.00110110(11),Y=00100,1.01010100,二、实例,-,101,求和:对对阶后的尾数进行求和运算。则X+Y1.10001010(11).,二、实例,-,102,规格化参加运算的二浮点数在经过如上两步后得到的和(差)的尾数有六种可能形式:(1)00.1XXXX(2)11.0XXXX(3)00.0XXXX(4)11.1XXXX(5)01.XXXXX(6)10.XXXXX分析:(1),(2)不需规格化操作;(3)(4)需要“左规”;(5)(6)需要“右规”。则上例1.10001010(11),应“左规”成为1.00010101(10)Ex=Ey=00100(4)+11110(-2)=00010=(2),二、实例,-,103,舍入:在对阶或“右规”时,由于机器对尾数位数的限制会有低位数移出造成一定的误差,而“舍入”是尽量减小误差的方法。(1)0舍1入法右移出去的最高位为0,直接移出去即可;右移出去的最高位为1,则移出去后末位加1。(2)直接舍去法溢出判断:阶码没有溢出,所以结果正确。,二、实例,-,104,设X=2ExMx,Y=2EyMy为参加乘除运算的操作数。则两数参加乘法运算的规则为:XY=2Ex+Ey.(MxMy)除法运算的规则为:XY=2Ex-Ey.(MxMy),2.6.2浮点乘法、除法运算,一、运算步骤,-,105,1、0检查2、阶码运算(加/减)3、尾数运算(乘/除)4、规格化和舍入处理,运算步骤,-,106,解:X=11011,0.0110011Y=00011,1.1110010求阶码和:Ex补+Ey补=11011+00011=11110(-2)尾数相乘Mx原My原=1.01011010110110原,二、实例,2.6.2浮点乘法、除法运算,假设:X=2-50.0110011,Y=23(-0.1110010),阶码用4位补码表示,尾数用8位原码表示,求XY.,-,107,解:尾数相乘Mx原My原=1.01011010110110原规格化处理:左规,尾数左移1位变为:1.101101,01101100,阶码变为11101(-3)舍入处理:左规,尾数左移1位变为:1.1011011,二、实例,2.6.2浮点乘法、除法运算,假设:X=2-50.0110011,Y=23(-0.1110010),阶码用4位补码表示,尾数用8位原码表示,求XY.,-,108,1.移码加减X移+Y移=2n+X+Y移(要得到正确的移码必须对符号位取反)问:有没有直接求出和的移码的方法?,2.6.2浮点乘法、除法运算,二、移码加减和溢出判断,-,109,解决方法:X移+Y补=X+Y移X移+-Y补=X-Y移【结论】:正常运算时把Y或-y的符号位取反再进行运算),三、移码加减和溢出判断,-,110,2.移码的溢出若运算时阶码采用双符号位,即第二符号位恒为0。则移码运算溢出的条件是:阶码的最高位为1上溢:符号位为10下溢:符号位为11,三、移码加减和溢出判断,-,111,第二章小结,重点难点:数据的定点数和浮点数的表示及其范围定点补码加法运算及其实现原理定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 灌肠课件教学课件
- 耳鼻喉科考试题目及答案
- 招聘信息护理学考试题及答案
- 激发兴趣提高学习热情课件培训
- 初一七门中考试题库及答案
- 化工鉴定考试题库及答案
- 财务代理公司实操考试题及答案
- 课件中使用弹幕的效果
- 高三期中数学考试及答案
- 锦江区语文中考试卷及答案
- 龙虎山正一日诵早晚课
- 米粉及杂粮类制品课件
- 楔形平板产生的等厚干涉
- 骨髓腔穿刺在急诊急救中的应用课件
- 机械动力学PPT完整全套教学课件
- 年产2.03万吨高端精细化学品及5G新材料项目环评报告书
- 群众文化副高答辩问题及答案
- GB/T 41972-2022铸铁件铸造缺陷分类及命名
- 主编-孙晓岭组织行为学-课件
- 中医刮痧法诊疗操作评分标准
- 《师范生教师职业能力证书》样式及说明
评论
0/150
提交评论