运算方法与运算器-3

上传人:woxinch****an2018 文档编号:45340098 上传时间:2018-06-15 格式:PPT 页数:23 大小:649KB
返回 下载 相关 举报
运算方法与运算器-3_第1页
第1页 / 共23页
运算方法与运算器-3_第2页
第2页 / 共23页
运算方法与运算器-3_第3页
第3页 / 共23页
运算方法与运算器-3_第4页
第4页 / 共23页
运算方法与运算器-3_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《运算方法与运算器-3》由会员分享,可在线阅读,更多相关《运算方法与运算器-3(23页珍藏版)》请在金锄头文库上搜索。

1、第第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以外,

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) (

3、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 11011011Y: 0 0 100 11 10101100

4、 对阶操作阶差E=EX补+-EY补=00010+11100=11110X阶码小,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。

5、 判溢出阶码符号位为00,故不溢出,最终结果为:X+Y=2011(-0.11101010) 第第3 3章章 运算方法与运算器运算方法与运算器 二、浮点乘除运算 1、浮点数乘法运算: 假设两个浮点数X和Y:第第3 3章章 运算方法与运算器运算方法与运算器 (1)0操作数检查 (2)阶码相加:阶码相加可以采用补码或者移码的定 点整数加法,同时对相加结果判溢,一旦发生正溢出, 则需报告溢出,若发生负溢出,则将结果置为机器零。 (3)尾数相乘 (4)结果规格化:可能需要左规1位 (5)舍入处理:尾数相乘的结果长度是尾数长度的两 倍,必须对低位舍入。 浮点乘法运算步骤第第3 3章章 运算方法与运算器运算

6、方法与运算器浮点数的舍入处理:截断处理 舍入处理:0舍1入法例3.46 设有5位数(其中有一附加位),用原码或补码表 示,舍入后保留4位结果。(采用0舍1入法)设:X原=0.11011 舍入后X原=0.1110X原=0.11100 舍入后X原=0.1110X补=1.00101 舍入后X补=1.0011X补=1.00100 舍入后X补=1.0010舍入后产生了误差,但误差值小于末位的权值。第第3 3章章 运算方法与运算器运算方法与运算器例3.47 阶码4位(移码),尾数8位(补码,含1符号位),阶 码以2为底。运算结果仍取8位尾数。设:X=2-50.1110011, Y=23(-0.111001

7、0) 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

8、=2-2(-0.1100110)在求乘积的阶码(即两阶码相加)时,有可能产生上溢或 下溢的情况;在进行规格化处理时,有可能产生下溢。第第3 3章章 运算方法与运算器运算方法与运算器例 两浮点数x = 2010.1101,y = 211(-0.1010)。假设尾数在计算机 中以补码表示,可存储4位尾数,2位 保护位,阶码以原码表示,求x+y。解:将x,y转换成浮点数据格式x浮 = 00 01, 00.1101y浮 = 00 11, 11.0110步骤1:对阶,阶差为11-01=10,即2,因此将x的尾数右移两位,得x浮 = 00 11, 00.001101步骤2:对尾数求和,得:x+y浮 = 0

9、0 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)阶码相

10、减 阶码相减的结果也可能溢出,若发生正溢出, 则需报告浮点数溢出,若发生负溢出,则将结果置 为机器零。 (3)尾数相除 (4)结果规格化 (5)舍入处理 浮点数除法运算步骤第第3 3章章 运算方法与运算器运算方法与运算器 浮点数除法运算流程第第3 3章章 运算方法与运算器运算方法与运算器 三、浮点运算器第第3 3章章 运算方法与运算器运算方法与运算器 本章小结 定点机器数的加减法运算:通过补码来实现 补码的加减运算规则使得计算机中的减法转化为加法 来运算,方便了硬件设计。 定点机器数的乘法运算 乘法运算:原码一位乘法;补码一位乘法 乘法器件可以采用基于上述串行乘法算法的乘法器, 也可以采用高速的阵列乘法器。 定点机器数的除法运算 除法运算:原码恢复余数除法、原码加减交替法 除法的硬件实现中,陈列除法器大大地提高除法运算 的速度。 浮点数的运算也均由定点数的运算复合而成。浮点运算 器由阶码运算部件和尾数运算部件两部分构成。 本章重点为定点数和浮点数的运算方法第第3 3章章 运算方法与运算器运算方法与运算器 作业第第3 3章章 运算方法与运算器运算方法与运算器

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号