指数函数e_x的快速计算方法.pdf

指数函数e_x的快速计算方法.pdf

ID:56985511

大小:207.72 KB

页数:4页

时间:2020-07-30

指数函数e_x的快速计算方法.pdf_第1页
指数函数e_x的快速计算方法.pdf_第2页
指数函数e_x的快速计算方法.pdf_第3页
指数函数e_x的快速计算方法.pdf_第4页
资源描述:

《指数函数e_x的快速计算方法.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第17卷第2期长春大学学报Vo.l17No.22007年4月JOURNALOFCHANGCHUNUNIVERSITYApr.2007文章编号:1009-3907(2007)02-0038-04x指数函数e的快速计算方法12张莹雪,王华军(1福建泉州华侨大学信息学院,福建泉州362021;2浙江大学理学院地理科学系,浙江杭州310000)摘要:基于双精度数在计算机中是按阶码和尾码分别存储的原理,提出了一种新的计算指数函数xy=e的方法,它能直接计算出y的指数部分(阶码)和有效数位(尾码),并直接存储到变量y中。通过

2、与MatLab中的库函数exp相比较,表明这种新算法计算精度更可靠,速度更快。关键词:指数函数;数值计算;双精度;Matlab中图分类号:0213.2文献标识码:A0引言指数函数作为工程计算中的一个常用函数,广泛使用于科学研究、工程设计等许多领域。传统的计算方法是利用指数函数的幂级数展开234nxxxxxxe=1+++++L+,1!2!3!4!n![1]取其前n项进行近似计算,其优点是当x较小时(

3、x

4、<1)计算速度快,但当x比较大时,展开项较多,1运算量较大,计算速度变慢,特别是当遇到海量的指数运算时,需要较长的时间。因此非常有必要发

5、展一种快速、简洁的算法,提高指数函数的计算精度和效率。本文利用双精度浮点数在计算机中的存储形式与泰勒级数展开相结合对算法进行改进,达到节省运算时间,提高运算速度的目的。1算法原理指数函数运算可表示为xy=e,(1)已知x,求y的问题。[2-4]11双精度浮点数在计算机中的存储方式双精度浮点数在计算机中占8个字节,64位,其中最高位(63)为符号位,见图1,1代表负,0代表正。相邻11位(62~52)表示指数部分(阶码),利用指数部分可快速地反映出双精度数的大小。在比较两个双精度数的大小时,要在指数部分加移码,双精度数的!移码∀为1023。剩余

6、52位(51~0)用来表示有效数位(尾码),有效数位反映出双精度数的精度,存储的有效数位为实际有效数位的小数部分,实际有效数位默认整数部分为1。图1浮点数在计算机中的存储方式3例如将-0.625转化为计算机中的二进制数双精度浮点数时:-0.625=-5/8=-5/2=-(101)2#收稿日期:20070320基金项目:国家自然科学基金资助项目(50603007)作者简介:张莹雪(1978),女,吉林省长春市人,福建泉州华侨大学信息学院助教,主要从事计算机仿真及计算科学方面研究。x第2期张莹雪,等:指数函数e的快速

7、计算方法39-3-12=-1.01#2,符号位为1,指数位为-1+1023=1022(1023为!移码∀),有效数位为1.01(在机器中省略默认位)。这样-0.625就可以如下形式存储成二进制序列,如图2所示。图2以-0625为例存储二进制序列同样,对(1)式中的y,也只需分别计算其指数部分和有效数位并直接存放到相应的存储位置即可。12指数部分的计算对(1)式两端取对数log2y=xlog2e=ax,(2)logyaxn+EnE2n有y=22=2=2=2g2=pg,(3)式中a=log2e为常数,n为ax的整数部分,n=[ax],E为ax的

8、小数部分,E=ax-n,(0

9、,(5)x0x若将e事先计算出来存放在一个数据表中,e则按(6)式的泰勒级数展开,则p可求,并将其直接放入y的尾数部分,速度会很快。23nx(x)(x)(x)e∃1+x+++n+。(6)2!3!n!由于一个数乘以2的整数次方的操作在计算机中可用移位实现,速度快,故将x00转化为16进制数,改写成:x00=0q1q2q3q4q5n=0q1q2q3+0000q4q5n=x0+x,(7)-1-2-3式中x0=0q1q2q3=q1#16+q2#16+q3#10,(8)-4-5x=0000q4q5n=q4#16+q4#16+n。(9)

10、-31x此时0<x<16=<<1,按(6)式计算e时,只取其前4项即可保证精度。4096xxq#16-1+q#16-2

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。