单精度浮点数累加和误差研究_第1页
单精度浮点数累加和误差研究_第2页
单精度浮点数累加和误差研究_第3页
全文预览已结束

下载本文档

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

文档简介

1、单精度浮点数累加和误差研究 摘要:计算机中进行浮点数加法运算时,需要进行对阶和右规格化操作,该操作会进行舍入处理,这种处理过程会产生误差,浮点数累加运算会造成误差的累积,导致计算结果精度不够甚至计算结果错误。通过实验手段研究单精度浮点数累加过程中不同结合顺序对浮点数累加和误差的影响,探索结合顺序导致计算误差的规律,为多核计算、gpu计算、多处理器计算等计算范型和计算结构提供选择结合方法的依据,便于发挥其并行计算的优势。 关键词:单精度浮点数;累加和;误差;结合顺序;右规格化 中图分类号:tp301.6;tp311.11 0引言 浮点数是现代计算机系统表示实数的一种方法,由于计算机中表示浮点数的

2、长度有限,所以不能表示全部的实数,任何计算机采用的浮点数表示方法都只能表示实数的一个子集。而浮点数是现实生活中普遍存在的数据类型,广泛地应用于科学、工程、金融等生活领域中。多数计算机程序设计语言提供了对浮点数据类型的支持,许多计算机从硬件级别就设立了专门的浮点运算器,以提高浮点数的运算性能。 浮点数表示规范有其天然的不足,由于舍入、截断等操作,会造成计算误差,并在计算过程中堆积和扩散。在很多情况下,由于没能很好地控制误差的堆积和扩散,最终造成计算的失败1,所以浮点数计算精度的研究不仅有理论价值,而且有重要的实践意义。 当前的多核计算、gpu计算、多处理机计算、多线程计算等计算范型或计算结构都提

3、供了改变原有串行计算顺序的手段。像浮点数的累加和运算等,需要利用结合律改变原来的顺序累计为并行累加。但浮点数的特点却使得累计顺序的改变导致计算误差的诞生,寻找合适的结合顺序就成了提高并行度而不损失计算精度的一种重要途径。 现在的处理器结构和程序语言基本都支持ieee7542浮点数规范。该标准有ieee单精度和ieee双精度两种基本的浮点规范。单精度浮点数长度短,可表示的数据范围有限,在计算时会产生较大的误差3。在当代计算机体系结构上,32位单精度浮点数操作的性能至少是64位双精度浮点数操作性能的2倍4。本文以单精度浮点数为研究对象,研究不同的结合顺序对浮点数累加和的影响。 在机器中,为保证浮点

4、数表示的唯一性,浮点数在机器中都是以规格化形式存储的。对于ieee754标准的浮点数来说,尾数必须是1.m的形式。由于两个定点小数的尾数相加运算后,尾数有可能不是1.m形式,为此必须进行规格化操作。规格化操作包括左规和右规两种情况。左规操作是将尾数左移,同时阶码减值,直至尾数成为1.m的形式。右规操作则将尾数右移1位,同时阶码增1。浮点运算在对阶或右规时,尾数需要右移,被右移出去的位会被丢掉,从而造成运算结果精度的损失。为了减少这种精度损失,可以将一定位数的移出位先保留起来,称为保护位,在规格化后用于舍入处理。 ieee754标准中规定了四种舍入方向:最近舍入(roundtonearest)、

5、向负无穷大舍入(roundtoward-)、向正无穷大舍入(roundtoward+)以及向0舍入(roundtoward0)10。由于最近舍入是默认舍入模式,故只介绍这种模式。这种舍入模式规定当有两个最接近的可表示的值时首选“偶数”值。例如,对于32位单精度浮点数来说,若超出可保存的23位的多余位大于等于10001,则多余位的值超过了最低可表示位值的一半,这种情况下,舍入的方法是在尾数的最低有效位上加1;若多余位小于等于01111,则直接舍去;若多余位为10000,此时再判断尾数的最低有效位的值,若为0则直接舍去,若为1则再加1。最后要进行溢出判断。浮点数的溢出根据运算结果阶码值是否产生溢出进行判断11。若阶码值超出阶码所能表示的最大正数,则为上溢,进一步,若此时浮点数为正数,则为正上溢,记为+,若浮点数为负数,则为负上溢,记为-;若阶

温馨提示

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

评论

0/150

提交评论