指数运算,对数运算,计算机如何通过普通的乘加实现?

软件和网站开发以及相关技术探讨
回复
xwg
帖子: 38
注册时间: 2010-02-28 9:11
送出感谢: 0
接收感谢: 0

指数运算,对数运算,计算机如何通过普通的乘加实现?

#1

帖子 xwg » 2011-01-05 22:56

指数运算,对数运算,计算机如何通过普通的乘加实现?
xwg
帖子: 38
注册时间: 2010-02-28 9:11
送出感谢: 0
接收感谢: 0

Re: 指数运算,对数运算,计算机如何通过普通的乘加实现?

#3

帖子 xwg » 2011-01-05 23:14

不行,如果阶数高的话,乘法太多了,比较笨拙。
我觉得库函数里不是这样实现的?!
xinzaibing
帖子: 6
注册时间: 2011-01-31 23:39
送出感谢: 0
接收感谢: 0

Re: 指数运算,对数运算,计算机如何通过普通的乘加实现?

#4

帖子 xinzaibing » 2011-01-31 23:47

指数运算用普通乘法实现,并要高效率,我有一个想法,其实这个也是在我去百度参加面试的时候的一个算法问题:
比如说2的8次方,即:2×2×2×2×2×2×2×2,按普通的乘法就是连续乘八次2,我的想法是:
首先计算 2×2 = 4, 4假若用a代替; 则上面的式子变为:a×a×a×a,我的意思就是,只计算一次2×2的结果,却能把原来的式子直接减少了3次重复的2×2的运算,
以此类推,记4×4=b,只计算一次4×4的积,可化原始式子为:b×b
还要记得检查是否越界.
不知楼主是否明白



对数运算要等其他高手解答了~
上次由 xinzaibing 在 2011-02-01 11:58,总共编辑 1 次。
头像
racnil
帖子: 288
注册时间: 2008-08-28 8:12
送出感谢: 0
接收感谢: 0
联系:

Re: 指数运算,对数运算,计算机如何通过普通的乘加实现?

#5

帖子 racnil » 2011-02-01 0:08

上次由 racnil 在 2011-02-11 18:49,总共编辑 2 次。
SLAX and Xorg(without any Window Managers)
It's fun!
头像
月下叹逍遥
论坛版主
帖子: 33999
注册时间: 2010-10-07 14:23
系统: Archdows10
来自: 某系某星某洲某国某省某市
送出感谢: 8 次
接收感谢: 63 次
联系:

Re: 指数运算,对数运算,计算机如何通过普通的乘加实现?

#6

帖子 月下叹逍遥 » 2011-02-11 18:10

泰勒级数展开?理论上,利用级数展开手工也能算。
心似浮云常自在,意如流水任东西。
此事背后一定有个天大的咪咪
广告:
1、走过路过,不要错过,dropbox网盘2.25G大放送
py大法好,退C保平安
java多妖孽,VB本异端
日诵一千遍,快活似神仙
头像
tenzu
论坛版主
帖子: 36913
注册时间: 2008-11-21 20:26
送出感谢: 0
接收感谢: 21 次

Re: 指数运算,对数运算,计算机如何通过普通的乘加实现?

#7

帖子 tenzu » 2011-02-11 19:33

如果有限次微分能得到一个简单式的话,可以考虑简单的迭代
回复

回到 “软件/网站开发”