浮点数运算方法.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.4 浮点四则运算 浮点加减运算 浮点乘除法运算 浮点数的表示 机器中任何一个浮点数可写成: Mx为浮点数的尾数,一般为绝对值小于1的规格化数(补码表示时允许为-1),机器中可用原码或补码表示。 Ex为浮点数的阶码,一般为整数,机器中大多用补码或移码表示。 R为浮点数的基数,常用2、8 、10或16表示。以下以基数为2进行讨论。 浮点加减运算 设两个浮点数 尾数的加减运算规则与定点数完全相同。 当两浮点数阶码不等时,因两尾数小数点的实际位置不一样,尾数部分无法直接进行加减运算。如:x=0.123×103 y=4.56×102 = 0.456×103 浮点加减运算的步骤 对阶,使两数的小数点位置对齐。 尾数求和,将对阶后的两尾数按定点加减运算规则求和(差)。 规格化,为增加有效数字的位数,提高运算精度,必须将求和(差)后的尾数规格化。 舍入,为提高精度,要考虑尾数右移时丢失的数值位。 判断结果 ,即判断结果是否溢出 1. 对阶 这一步操作是将两个加数的小数点对齐。 小阶向大阶看齐,阶码较小的数,其尾数向右移,每右移一位,阶码加“1”,直到两数阶码相同为止。 尾数右移时可能会发生数码丢失,影响精度。 例:两浮点数 x = 0.1101×201,    y = -(0.1010)×211,求x+y。 (1)首先写出x、y在计算机中的补码表示。   [x]补=00,01;00.1101,[y]补=00,11;11.0110 EX Mx Ey My  (2)在进行加法前,必须先对阶,故先求阶差:   [ΔE]补=[Ex]补-[Ey]补=[Ex]补+[-Ey]补 = 00,01+11,01=11,10   即ΔE=-2,表示x的阶码比y的阶码小,再按小阶向大阶看齐的原则,将x的尾数右移两位,其阶码加2。   得[x]‘补=00,11;00.0011(01)   此时,ΔE=0,表示对阶完毕。 2. 尾数求和 将对阶后的两个尾数按定点加(减)运算规则进行运算。 注意:并不考虑溢出——溢出由阶码决定 接上例,两数对阶后得:   [x]ˊ补=00,11;00.0011    [y]补=00,11;11.0110   则[Sx+Sy]补=00.0011+11.0110=11.1001  即[x+y]补=00,11;11.1001 3. 规格化 尾数S的规格化是指尾数满足条件: 如果采用双符号位的补码,则   当S0时,其补码规格化形式为    [S]补=00.1××…×   当S0时,其补码规格化形式为    [S]补=11.0××…× 但对S0时,有两种情况需特殊处理。 S=-1/2,则[S]补=11.100…0。对于补码而言,它不满足于上面的规格化表示式。为了便于硬件判断,特规定-1/2是规格化的数(对补码而言)。 S=-1,则[S]补=11.000…0。因小数补码允许表示-1,故-1视为规格化的数。 规格化又分左规和右规两种。 左规。当尾数出现00.0××…×或11.1××…×时,需左规。左规时尾数左移一位,阶码减1,直到符合补码规格化表示式为止。 右规。当尾数出现01.××…×或10.××…×时,表示尾数溢出,这在定点加减运算中是不允许的,但在浮点运算中这不算溢出,可通过右规处理。右规时尾数右移一位,阶码加1。 接上例,求和结果为[x+y]补=00,11;11.1001   尾数的第一数值位与符号位相同,需左规,即将其左移一位,同时阶码减1,得[x+y]补=00,10;11.0010。 4. 舍入 在对阶和右规的过程中,可能会将尾数的低位丢失,引起误差,影响精度,为此可用舍入法来提高尾数的精度。 进行舍入时应满足两个要求 首先,对每一次运算的结果而言,要保证误差不超过给定的范围。比如,设机器尾数长39位,要求每次运算误差不超过末位(即第39位)的“1”,即小于 2-39。 其次在大量的运算过程中要保证误差的平衡,即在每一次运算时,由于舍入处理,可能使运算结果增大了,也可能减少了。但总的说来,增加和减少的机会必需是均等的,否则会产生很大的积累误差。 4. 舍入—常用的舍入方法 “0舍1入”法:“0舍1入”法类似于十进制运算中的“四舍五入”法,即在尾数右移时,被移去的最高数值位为0,则舍去;被移去的最高数值位为1,则在尾数的末位加1。这样做可能使尾数又溢出,此时需再做一次右规

文档评论(0)

annylsq + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档