chap3运算方法与运算器.ppt_第1页
chap3运算方法与运算器.ppt_第2页
chap3运算方法与运算器.ppt_第3页
chap3运算方法与运算器.ppt_第4页
chap3运算方法与运算器.ppt_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第3 3章章 运算方法与运算器运算方法与运算器 教学过程 3.1 定点数的加减运算及实现 3.2 定点数的乘法运算及实现 3.3 定点数除法运算及实现 3.4 定点运算器的组成与结构 3.5 浮点运算及运算器 本章小结 作业 第第3 3章章 运算方法与运算器运算方法与运算器 3.5 浮点运算及运算器 一、浮点加减运算 二、浮点乘除运算 三、浮点运算器 第第3 3章章 运算方法与运算器运算方法与运算器 浮点数的表示形式(以2为底): N=M2E 其中,M为浮点数的尾数a,一般为绝对值小于1 的规格化二进制小数,用原码或补码形式表示; E为浮点数的阶码,一般是用移码或补码表示的 整数。 阶码的底除了2以外,还有用8或16表示的,这里 先以2为底进行讨论,然后再简介以8或16为底的 数的运算。 第第3 3章章 运算方法与运算器运算方法与运算器 一、浮点加减运算 假设两个浮点数X和Y 则必须保证X和Y的阶码(指数)是相同 的,然后对尾数做加减运算。 第第3 3章章 运算方法与运算器运算方法与运算器 浮点加减运算步骤 (1)0操作数检查:以尽可能的简化操作。 (2)对阶:原则是小阶对向大阶 求阶差E=EX-EY,若E0,即EXEY时需要对阶。 若E0,则EXEY,MY每右移一位,EY+1,直至 EY=EX 。 若E0,将MY右移3位,EY加3: Y浮 = 00,001 00.0001100 (101) (2)尾数相加: MZ补 = 11.1000001(101) (3)结果规格化:左规一位,无溢出: MZ补 = 11.0000011(01) EZ补 = 00,001 + 11,111= 00,000 (4)舍入:按照0舍1入法,尾数多余位舍去 结果为:Z浮 = 0,000 1.0000011 第第3 3章章 运算方法与运算器运算方法与运算器 例3.45 两浮点数相加,求X+Y。(见教材P90) 已知:X=20100.11011011, Y=2100(-0.10101100) 解 :计算过程: 阶码符号 阶码 数字符号 尾数 X:0 0 010 00 11011011 Y: 0 0 100 11 10101100 对阶操作 阶差E=EX补+-EY补=00010+11100=11110 X阶码小,MX右移2位,保留阶码E=00100。 MX补=00 00 110 110 11 下划线上的数下划线上的数 是右移出去而是右移出去而 保留的附加位保留的附加位 第第3 3章章 运算方法与运算器运算方法与运算器 尾数相加 MX补+MY补 =000011011011+1101010100=1110001010 11 规格化操作 左规,移1位,结果=1100010101 10;阶码-1(减1操作 ),E=00011。 舍入 附加位最高位为1,在所得结果的最低位+1,得新结果: M补=1100010110, M=-0.11101010。 判溢出 阶码符号位为00,故不溢出,最终结果为: X+Y=2011(-0.11101010) 第第3 3章章 运算方法与运算器运算方法与运算器 二、浮点乘除运算 1、浮点数乘法运算: 假设两个浮点数X和Y: 第第3 3章章 运算方法与运算器运算方法与运算器 (1)0操作数检查 (2)阶码相加:阶码相加可以采用补码或者移码的定 点整数加法,同时对相加结果判溢,一旦发生正溢出, 则需报告溢出,若发生负溢出,则将结果置为机器零。 (3)尾数相乘 (4)结果规格化:可能需要左规1位 (5)舍入处理:尾数相乘的结果长度是尾数长度的两 倍,必须对低位舍入。 浮点乘法运算步骤 第第3 3章章 运算方法与运算器运算方法与运算器 浮点数的舍入处理: 截断处理 舍入处理:0舍1入法 例3.46 设有5位数(其中有一附加位),用原码或补码表 示,舍入后保留4位结果。(采用0舍1入法) 设:X原=0.11011 舍入后X原=0.1110 X原=0.11100 舍入后X原=0.1110 X补=1.00101 舍入后X补=1.0011 X补=1.00100 舍入后X补=1.0010 舍入后产生了误差,但误差值小于末位的权值。 第第3 3章章 运算方法与运算器运算方法与运算器 例3.47 阶码4位(移码),尾数8位(补码,含1符号位),阶 码以2为底。运算结果仍取8位尾数。 设:X=2-50.1110011, Y=23(-0.1110010) X,Y为真值, 此处阶码用十进制表示,尾数用二进制表示。运算过程 中阶码取双符号位。 (1) 求乘积的阶码。乘积的阶码为两数阶码之和。 EX+EY移=EX移+EY补=00011+00011=00110 (2) 尾数相乘。用定点数相乘的办法, XY补=1.0011001 1001010 (尾数部分) (3) 规格化处理。本例尾数已规格化,不需要再处理。如 未规格化,需左规。 第第3 3章章 运算方法与运算器运算方法与运算器 (4) 舍入。尾数(乘积)低位部分的最高为1,需要舍入,在 乘积高位部分的最低位加1,因此 XY补=1.0011010 (尾数部分) (5) 判溢出。阶码未溢出,故结果为正确。 XY=2-2(-0.1100110) 在求乘积的阶码(即两阶码相加)时,有可能产生上溢或 下溢的情况;在进行规格化处理时,有可能产生下溢。 第第3 3章章 运算方法与运算器运算方法与运算器 例 两浮点数x = 2010.1101,y = 211(-0.1010)。假设尾数在计算机 中以补码表示,可存储4位尾数,2位 保护位,阶码以原码表示,求x+y。 解:将x,y转换成浮点数据格式 x浮 = 00 01, 00.1101 y浮 = 00 11, 11.0110 步骤1:对阶,阶差为11-01=10,即2,因此将x的尾数右移两位,得 x浮 = 00 11, 00.001101 步骤2:对尾数求和,得: x+y浮 = 00 11, 11.100101 步骤3:由于符号位和第一位数相等,不是规格化数,向左规格化,得 x+y浮 = 00 10, 11.001010 步骤4:截去。 x+y浮 = 00 10, 11.0010 步骤5: 数据无溢出,因此结果为 x+y = 210(-0.1110) 第第3 3章章 运算方法与运算器运算方法与运算器 浮点数乘法运算流程 第第3 3章章 运算方法与运算器运算方法与运算器 二、浮点乘除运算 2、浮点数除法运算: 假设两个浮点数X和Y: 第第3 3章章 运算方法与运算器运算方法与运算器 (1)0操作数检查 当除数为0,则报告除法出错,或者结果(商) 无穷大;当被除数为0,则商为0。 (2)阶码相减 阶码相减的结果也可能溢出,若发生正溢出, 则需报告浮点数溢出,若发生负溢出,则将结果置 为机器零。 (3)尾数相除 (4)结果规格化 (5)舍入处理 浮点数除法运算步骤 第第3 3章章 运算方法与运算器运算方法与运算器 浮点数除法运算流程 第第3 3章章 运算方法与运算器运算方法与运算器 三、浮点运算器 第第3 3章章 运算方法与运算器运算方法与运算器 本章小结 定点机器数的加减法运算:通过补码来实现 补码的加减运算规则使得计算机中的减法转化为加法 来运算,方便了硬件设计。 定点机器数的乘法运算 乘法运算:原码一位乘法;补码一位乘法 乘法器件可以采用基于上述串行乘法算法的乘法器, 也可以采用高速的阵列乘法器。 定点机器数的除法运算 除法运算:原

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论