4026|13

954

帖子

0

TA的资源

纯净的硅(初级)

楼主
 

发一个吊的不行的开平方算法 [复制链接]

 
FAST INVERSE SQUARE ROOT
看到这个名字有没有什么想法


这个可是号称世界上最快的浮点开方算法哦,怎么做到的?0x5f3759df就是它
原算法好像是在雷神之锤里面实现的。
大家看看吧
  1. #include <math.h>
  2. float InvSqrt(float x)
  3. {
  4. float xhalf = 0.5f*x;
  5. int i = *(int*)&x; // get bits for floating VALUE
  6. i = 0x5f375a86- (i>>1); // gives initial guess y0
  7. x = *(float*)&i; // convert bits BACK to float
  8. x = x*(1.5f-xhalf*x*x); // Newton step, repeating increases accuracy
  9. return x;
  10. }

  11. int main()
  12. {
  13.   printf("%lf",1/InvSqrt(3));

  14.    return 0;
  15. }
复制代码
在附上论文
Fast_Inverse_Square_Root.pdf (195.54 KB, 下载次数: 36)

最新回复

niubility  详情 回复 发表于 2015-8-26 22:47
点赞 关注(5)

回复
举报

2144

帖子

3

TA的资源

五彩晶圆(中级)

沙发
 
我看过的版本注释是这样的

what's the fuck of 0x5f375a86 ??

点评

是啊,然后一个教授专门又去研究这个数,通过理论证明,后面好像有找到一个更好的数字,跟这个数字非常接近  详情 回复 发表于 2015-8-25 16:39
 
个人签名电工
 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

板凳
 
特地去找了下,号称比一般的算法快5倍



 
个人签名电工
 
 

回复

6040

帖子

202

TA的资源

版主

4
 
确实叼!
 
 
 

回复

954

帖子

0

TA的资源

纯净的硅(初级)

5
 
lyzhangxiang 发表于 2015-8-25 15:43
我看过的版本注释是这样的

what's the fuck of 0x5f375a86 ??

是啊,然后一个教授专门又去研究这个数,通过理论证明,后面好像有找到一个更好的数字,跟这个数字非常接近

点评

但是没这个数准。。  详情 回复 发表于 2015-8-25 16:39
 
 
 

回复

2144

帖子

3

TA的资源

五彩晶圆(中级)

6
 
247153481 发表于 2015-8-25 16:39
是啊,然后一个教授专门又去研究这个数,通过理论证明,后面好像有找到一个更好的数字,跟这个数字非常接 ...

但是没这个数准。。

点评

反正不知道是怎么想到的  详情 回复 发表于 2015-8-25 16:41
 
个人签名电工
 
 

回复

954

帖子

0

TA的资源

纯净的硅(初级)

7
 
lyzhangxiang 发表于 2015-8-25 16:39
但是没这个数准。。

反正不知道是怎么想到的
 
 
 

回复

2168

帖子

8

TA的资源

五彩晶圆(初级)

8
 
http://www.cnblogs.com/pkuoliver ... try-about-sqrt.html
好牛啊,好想看看里面都还有哪些NB的算法,可惜链接的网页里提供下载的都失效了
 
个人签名坐而言不如起而行
 
 

回复

2168

帖子

8

TA的资源

五彩晶圆(初级)

9
 
特意找了一个QUAKE-III的原代码,找到了那个传说中的Q_math.c,里面真的有这个函数,好强大

q_math.txt

30.73 KB, 下载次数: 12

 
个人签名坐而言不如起而行
 
 

回复

6423

帖子

16

TA的资源

版主

10
 
看题目以为会是段汇编
 
个人签名training
 
 

回复

5979

帖子

8

TA的资源

版主

11
 
好牛逼!
 
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 
 

回复

120

帖子

0

TA的资源

一粒金砂(中级)

12
 
早有耳闻,今天见到真身了
 
 
 

回复

5979

帖子

8

TA的资源

版主

13
 
这个算法非常好!
 
个人签名生活就是油盐酱醋再加一点糖,快活就是一天到晚乐呵呵的忙
===================================
做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰
 
 

回复

419

帖子

0

TA的资源

一粒金砂(高级)

14
 
niubility
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表