找回密码
 立即注册
查看: 391|回复: 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;

回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:415
  • 最近打卡:2025-04-30 09:58:34
已绑定手机

39

主题

2006

回帖

6845

积分

论坛元老

积分
6845
发表于 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)


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:341
  • 最近打卡:2025-05-04 00:03:32

4

主题

242

回帖

1299

积分

金牌会员

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:341
  • 最近打卡:2025-05-04 00:03:32

4

主题

242

回帖

1299

积分

金牌会员

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:338
  • 最近打卡:2025-04-25 16:31:21
已绑定手机

14

主题

600

回帖

2199

积分

荣誉版主

积分
2199
发表于 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. }
复制代码


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:513
  • 最近打卡:2025-05-02 07:32:37

21

主题

564

回帖

2678

积分

金牌会员

积分
2678
发表于 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
试试卡马克大神的神级代码,快速迭代开平方.

好的,我试试,谢谢大佬
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:425
  • 最近打卡:2025-05-04 00:16:27
已绑定手机

19

主题

3191

回帖

4930

积分

论坛元老

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

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:521
  • 最近打卡:2025-05-04 09:27:07
已绑定手机

46

主题

1694

回帖

2602

积分

金牌会员

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


回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-4 10:21 , Processed in 0.219083 second(s), 105 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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