找回密码
 立即注册
查看: 1188|回复: 8

大佬们有没有缩短“根号”运算的办法

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:166
  • 最近打卡:2025-03-23 14:26:30

13

主题

25

回帖

46

积分

新手上路

积分
46
发表于 2024-5-20 08:45:39 | 显示全部楼层 |阅读模式
我在中断里使用了根号运算,一看中断时间80us,注释掉后就几us。


                        Va_1=Va-2.4617985;
                        
                        
                        x_pn=x_n;
                        
                        
                        y_pn=y_n;
                        
                        
                        x_n=Va_1*Va_1;
                        
                        
                        y_n = IIR_B[0]*x_n + IIR_B[1]*x_pn  - IIR_A[1]*y_pn;
                        
                        
                        a=1.4142*sqrt(y_n)*0.906+2.4617985;

回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:646
  • 最近打卡:2026-03-24 08:59:20
已绑定手机

52

主题

2497

回帖

8818

积分

论坛元老

积分
8818
发表于 2024-5-20 10:55:44 | 显示全部楼层
STC8051U, 2024/7/1供货
TFPU32@108MHz,
【硬件三角函数/反三角函数运算器,硬件浮点运算器】为主的
【新型 控制器,处理器】
T: 硬件三角函数/反三角函数运算器
F: 硬件浮点运算器


截图202405202021443019.jpg
截图202405202022315334.jpg
截图202405202024541338.jpg

追风剑-II@STC8051USB实验箱讨论稿,8位/32位8051兼容,三角函数/浮点, USB - 老梁亲测 STC33-ARM 内部平台系列讲座 国芯技术交流网站 - STC全球32位8051爱好者互助交流社区 (stcaimcu.com)


回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:663
  • 最近打卡:2026-03-24 00:05:59

4

主题

243

回帖

2998

积分

金牌会员

积分
2998
发表于 2024-5-20 11:05:59 | 显示全部楼层
{:5_286:}正常,软件浮点运算消耗的时间确实很长
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:663
  • 最近打卡:2026-03-24 00:05:59

4

主题

243

回帖

2998

积分

金牌会员

积分
2998
发表于 2024-5-20 11:17:18 | 显示全部楼层
如果不需要高精度的话,可以百度下有没有快速开方运算的办法
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:537
  • 最近打卡:2026-03-18 09:40:02
已绑定手机

15

主题

616

回帖

1573

积分

荣誉版主

积分
1573
发表于 2024-5-20 11:36:06 | 显示全部楼层
本帖最后由 xiangzichen 于 2024-5-20 11:55 编辑

试试卡马克大神的神级代码,快速迭代开平方.

  1. float SquareRootFloat(float number) {   
  2.     long i;   
  3.     float x, y;   
  4.     const float f = 1.5F;   
  5.     x = number * 0.5F;   
  6.     y  = number;   
  7.     i  = * ( long * ) &y;   
  8.     i  = 0x5f3759df - ( i >> 1 ); //注意这一行   
  9.     y  = * ( float * ) &i;   
  10.     y  = y * ( f - ( x * y * y ) );   
  11.     y  = y * ( f - ( x * y * y ) );   //提高精度就来一次.
  12.     return number * y;
  13. }
复制代码


回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:814
  • 最近打卡:2026-03-24 08:22:08
已绑定手机

25

主题

630

回帖

3961

积分

论坛元老

积分
3961
发表于 2024-5-20 14:23:04 | 显示全部楼层
xiangz*** 发表于 2024-5-20 11:36
试试卡马克大神的神级代码,快速迭代开平方.

传世经典:0x5f3759df
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:166
  • 最近打卡:2025-03-23 14:26:30

13

主题

25

回帖

46

积分

新手上路

积分
46
发表于 2024-5-20 15:29:40 | 显示全部楼层
xiangz*** 发表于 2024-5-20 11:36
试试卡马克大神的神级代码,快速迭代开平方.

好的,我试试,谢谢大佬
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:746
  • 最近打卡:2026-03-24 00:01:22
已绑定手机

19

主题

3338

回帖

6929

积分

论坛元老

积分
6929
发表于 2024-5-20 15:33:12 来自手机 | 显示全部楼层
雷神之锤0x5f3759df
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:842
  • 最近打卡:2026-03-24 07:50:47
已绑定手机

58

主题

2015

回帖

3629

积分

论坛元老

积分
3629
发表于 2024-5-20 15:59:03 | 显示全部楼层
xiangz*** 发表于 2024-5-20 11:36
试试卡马克大神的神级代码,快速迭代开平方.


回复

使用道具 举报 送花

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

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-3-24 16:27 , Processed in 0.119712 second(s), 83 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表