



全文预览已结束
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 1 7卷第 2期 2 0 0 7年4月 长春大学学报 J 0 URNAL O F C HANGC HUN UNERS r I Y V0 1 1 7 No 2 Ap r 2 0 0 7 文章编号: 1 0 0 9 3 9 0 7 ( 2 0 0 7 ) 0 2- 0 0 3 8一 o 4 指数函数 e x的快速计算方法 张莹雪 ,王华军 ( 1 福建泉州华侨大学信息学院,福建泉州3 6 2 0 2 1 ; 2 浙江大学理学院地理科学系,浙江杭州3 1 0 0 0 0 ) 摘要: 基于双精度数在计算机 中是按阶码和尾码分别存储的原理 , 提 出了一种新的计算指数函数 Y=e 的方法, 它能直接计算出Y的指数部分 ( 阶码) 和有效数位 ( 尾码 ) , 并直接存储到变量 Y中。 通过与 M a t T ,a h中的库函数 e x p 相比较, 表明这种新算法计算精度更可靠, 速度更快。 关键词: 指数函数 ; 数值计算; 双精度; Ma t l a b 中图分类号 : 0 2 1 3 2 文献标识码: A 0 引言 指数函数作为工程计算中的一个常用函数, 广泛使用于科学研究、 工程设计等许多领域。传统的计算方 法是利用指数函数 的幂级数展开 2 3 4 e = 1 + 青 + + + + L + , 取其前 7 , 项进行近似计算【 1 , 其优点是当 较小时( 1 ) 计算速度快 , 但当 比较大时 , 展开项较多 , 运算量较大 , 计算速度变慢 , 特别是当遇到海量的指数运算时, 需要较长的时间。因此非常有必要发展一 种快速、 简洁的算法 , 提高指数函数的计算精度和效率。本文利用双精度浮点数在计算机中的存储形式与泰 勒级数展开相结合对算法进行改进, 达到节省运算时间, 提高运算速度的目的。 1 算法原理 指数 函数运算可表示为 Y= e , ( 1 ) 已知 , 求 Y的问题 。 1 1 双精度浮点数在计算机中的存储方式 2 双精度浮点数在计算机中占8 个字节, 6 4 位, 其中最高位( 6 3 ) 为符号位, 见图1 , 1 代表负, 0 代表正。相邻 l 1 位( 6 2 5 2 ) 表示指数部分( 阶码) , 利用指数部分可快速地反映出双精度数的大小。在比较两个双精度数的 大小时, 要在指数部分加移码, 双精度数的“ 移码” 为 1 0 2 3 。剩余5 2 位( 5 1 0 ) 用来表示有效数位( 尾码) , 有效 数位反映出双精度数的精度, 存储的有效数位为实际有效数位的小数部分, 实际有效数位默认整数部分为 1 。 符号位 指数部分有效数位 图1 浮点数在计算机中的存储方式 例如将 一 0 6 2 5 转化为计算机中的二进制数双精度浮点数时: 一 0 6 2 5=一 5 8=一 5 2 =一( 1 0 1 ) 收稿 日期 : 2 0 0 7 - 0 3 - 2 0 基金项目: 国家自然科学基金资助项 目( 5 0 6 0 3 0 0 7 ) 作者简介: 张莹雪( 1 9 7 8 ) , 女, 吉林省长春市人, 福建泉州华侨大学信息学院助教 , 主要从事计算机仿真及计算科学方面研究。 维普资讯 第 2期 张莹雪, 等 : 指数函数 e 的快速计算方法 3 9 2一:一1 O 12, 符号位为 1 , 指数位为 一1+1 0 2 3=1 0 2 2 ( 1 0 2 3为 “ 移码” ) , 有效数位为 1 O 1 ( 在机器 中省略默认位) 。这样 - 0 6 2 5 就可以如下形式存储成二进制序列, 如图2 所示。 j, 符号位 有效数位 图 2以 一o 6 2 5为 例存储二进 制序 列 同样, 对( 1 ) 式中的) , , 也只需分别计算其指数部分和有效数位并直接存放到相应的存储位置即可。 1 2 指数部分的计算 对 ( 1 ) 式两端取对数 l o g 2 Y x l o g 2 e=a x , ( 2 ) 有 Y =2 。 = 2 =2 ” = 2 = p g 2 , ( 3 ) 式中a = l o g e 为常数, 为似 的整数部分, = , E为 似 的小数部分, E= 似 一 , ( 0 E1 ) , P为 Y 的有效数位( 尾码) p = 2 。 可见Y的指数部份 已求得, 可利用 C语言编程直接存储到变量 Y 的阶码中, 而 Y 在计算机中存储的有 效数位( 尾码) p可通过以下推导转化为 e 指数函数计算。 1 3 有效数位 P的计算 实际上 , 对 ( 3 ) 式两端稍作变换 P e I 叩 =e =e 删=e O 0 。 ( 4) 式 中 0 0 =E I n 2 , 且有 0 0 0 I n 2 0 6 9 3 1 。 此时若直接用 e XO O 的级数展开法求P , 计算时间仍然会比较长。若适当选取 。 和 , 使得A x 1 , 且满 足 0 0 = 0 + A x , 则有 : P e o o = e =e o e , ( 5 ) 若将 e 事先计算出来存放在一个数据表中, e 则按( 6 ) 式的泰勒级数展开, 则P可求, 并将其直接放人 Y的尾数部分, 速度会很快。 e + + 】 。 ( 6 ) 由于一个数乘以2的整数次方的操作在计算机中可用移位实现, 速度快, 故将 。 。 转化为 1 6 进制数, 改 写成 : 0 0 =0 g 1 g 2 g 3 g 4 g 5 7 , = 0 g 1 q 2 g 3 + 0 O 0 0 q 4 g 5 g = o + , ( 7 ) 中戈 o =O q 1 g 2 g 3 =g 1 X1 6一 + g 2 1 6一 + g 3 1 0一 , ( 8 ) = O O 0 0 q 4 =q 4 1 6一 +g 4 X 1 6一 + n 。 ( 9 ) 此时 0 1 6 一 1 1 ,按( 6 ) 式计算 e 缸 时, 只取其前4 项即可保证精度。 对 e l , 有 e =e 6 - 1 q 2 x 1 6 - 2 + 叮 3 _ 。 =e e q 2 x 1 6 - 2 e 叮 3 _ 。 , ( 1 0 ) 因 o l o g ( 2 )= 0 6 9 3 10 7 5= , 知 g 1 , g 2 , g 3的取值范围为 g 1 0 , l 1 , g 2 o , 1 5 , g 0 , 1 5 , 计算时可将 。 。 乘以4 0 9 6后再取整, 通过移位处理得到。 2 算法具体实现 定义一个 3 行 1 6列的静态数组 c _ e x p _ x O 3 儿1 6 存放特殊点上的函数值。让 c _e x p _ x O 0 1 1 6 存放 e , ( g 1 = 0 , 1 , 2 , , 1 1 , 0 , 0 , 0 , 0 ) , c_e x p _ x O 1 1 1 6 存放 e , ( q 2 : 0 , 1 , 2 , , 1 5 ) , c e x p _ x O 2 1 1 6 存放 e , ( g 3 = O , 1 , 2 , , 1 5 ) , 维普资讯 4 0 长春大学学报 第 1 7卷 定义一个联合体 F R E X P _ U , 以便于对双精度数的指数部分和尾数直接进行位操作。 t y p e d e f u n i o n d o u b l e d a t ; s tr u c t u n s i g n e d t l : 3 2; u n s i gn e d t O: 8: u n s i gn e d W: 1 2; u n s i gne d j : 1 1 ; u n s i gn e d S : 1; j w; F R E X P _ U; 输入 ; 若 7 0 9时, 输出为Y= ; 按( r t ) 式计算 Y 的指数部份 r t 。 按 x 。 0 = E I n 2 ) 式计算 x 0 0 。 将 。 。 乘以4 0 9 6 后再取整, 通过移位处理得到g 。 , g , g , , 并用数组 e _ e x p _ x 0中预先存放的数据, 利用 ( 1 0 ) 式求 出 e 。 计算 , 并按( 1 6 ) 式计算e 厶 。 按( 5 ) 式计算 Y 的尾数部份P ; 通过位操作直接存储 Y 的指数部份 r t 和尾数部份P到变量Y中。 3 计算结果比较 M a tL a b 7 0 作为工程技术中常用数学软件, 其计算的精度和效率, 已经得到广泛的认可 。 用本算法 编写的e x p w ( x ) 函数和 M a t L a b 7 0中的库函数 e r p ( x ) 做了试算对比, 结果如表 1 所示。 表 1 本算法与 Ma t L a 0中计算时间对比 表 1 t o :M a fl a b 7 o的库函数的计算时间, t 。 为本算法的计算时间。可见: 在 o I 引 时, 本算 法 快将近3 o , 耷 1 时, M a t L a b 中 的 算法 优 势明 显, 在1 1 时计算速度比M a fl a b的库函数快 1 0 以上。特别适 维普资讯 第 2期 张莹雪, 等: 指数函数 e 的快速计算方法 4 1 用于大量指数运算的情况, 作为一种快速、 准确的算法, 为指数函数的运算提供了一条新的思路, 值得推广。 参考文献 : 1 R i c h a r d L B u r d e n , J D o u g l a s F a i r e s 数值分析 M 冯烟利, 朱海燕, 译 北京: 高等教育出版社, 2 0 0 5 : 1 5 - 2 2 2 谢树煜 计算机组成原理 M 北京: 清华大学出版社, 2 0 0 3 : 6 6- 7 4 。 3 胡越明 计算机组成与系统结构 M 北京: 电子工业出版社 , 2 0 0 2 : 9 4 - 9 8 4 张宗杰, 张明亮 c语言中浮点数的存储格式及其有效数字位数 J 计算机与数学工程, 2 0 0 6 , 3 4 ( 1 ) : 8 4 8 6 , 9 0 5 张琳 基于 c的 M A T L A B函数功能扩充 J , 计算机与现代化, 2 0 0 3 ( 6 ) : 8 0 8 2 6 谢莉萍, 龙志强, 等 运用 m e x 文件优化 M a t la b 软件性能 J 计算机应用 , 2 0 0 1 , 2 1 : 1 0 1 1 0 2 7 刘志俭 , M A T L A B语言应用系列书 M A T L A B外部程序接口( 6 x ) M 北京: 科学出版社 , 2 0 0 2 : 3 4 3 3 8 4 责任编辑: 钟声 A f a s t a l g o r i t h m t o c c l l l a t e e x po n e n tia l f u n c tio n e Z H A N G Y i n g x u e , WA N G H u a - j u n ( 1 C o l l e g e o f I n f o r m a t i o n S c i e n c eE n g i n e e ri n g , H u a q i a o U n i v e r s i t y , Q u a n z h o u 3 6 2 0 2 1 , C h i n a ; 2 E a r t h S c i e n c e D e p a r t me n t o f S c i e n c e C o l l e g e , Z h e j i a n g U n i v e rs i t y , H a n g z h o u 3 1 0 0 0 0 , C h i n a ) Ab s t r a c t :A n e w a l g o r i t h m t o c a l c u l a t e t h e e x p o n e n t i al f u n c t i o n e w a g d e v e l o p e d t o d i r e c t l y e s ti ma t e the b i a s e d e x pon e n t a n d t a i l c o d e b a s e d o n the c a n i s t e r p ri n c i p l e o f the d o u b l e p r e c i s i o n n u mb e r i n c o m p u t e r T h e nthe r e s ult s w e r e s t o r e d a 8 the v a r i ant YCo mp a r e d wi th the l i b r a r y f u n c t i o n o f e x p i n Ma t l a b,i t i n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年健康科技行业数字化医疗服务发展与健康科技创新研究报告
- 2025年房地产行业智能建筑技术探索与应用研究报告
- 2025年健康养老行业健康养老服务与养老产业发展研究报告
- 2025年物流科技行业物流科技发展和物流市场研究报告
- 2025年智慧城市行业城市智能交通解决方案研究报告
- 2025年互联网行业区块链技术应用案例分析研究报告
- 2025年汽车智能驾驶行业自动驾驶技术与车联网研究报告
- 2025年智慧农业行业智能农业与农业科技创新研究报告
- 2025年泌尿外科学膀胱结石超声碎石术操作模拟考试卷答案及解析
- 2025广东深圳市龙岗区委员会招聘编外聘用人员3人笔试参考题库附答案解析
- 2025合伙制合同协议书
- 福建省全国名校联盟2026届高三上学期联合开学摸底考试语文试题及参考答案
- 心血管衰老的分子机制探索
- 医院收费室培训课件
- 重点小学小学语文毕业总复习小升初资料大全
- 高原健康培训课件
- 血站差错管理课件
- GB/T 18266.2-2025体育场所等级的划分第2部分:健身房
- 第4节 跨学科实践:电路创新设计展示-教科版九年级《物理》上册教学课件
- DGTJ08-2310-2019 外墙外保温系统修复技术标准
- 光电美容培训课件
评论
0/150
提交评论