3031|8

42

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

MSP430与小数运算 [复制链接]

复杂的小数运算对单片机有什么影响

最新回复

如果是整数乘法或者浮点数乘法,应该会自动调用乘法器的。 具体用不用,应该要看编译器怎么处理,我没研究过。 我不看好浮点数的加减运算,小数点不对齐怎么加减?  详情 回复 发表于 2015-7-18 23:58
 
点赞 关注

回复
举报

1193

帖子

0

TA的资源

纯净的硅(高级)

沙发
 
没啥影响,比较耗时间和空间。
你需要什么精度的运算?
 
 

回复

116

帖子

0

TA的资源

一粒金砂(高级)

板凳
 
先变成整数,然后再处理
 
 
 

回复

42

帖子

0

TA的资源

一粒金砂(中级)

4
 
x = (3.603-adc0)/0.03203;
                          x = find_x(x);
                          b = (376*x-15370);
                          b = b/1000000.0;
                          c = (adc0_0*100000-368200-1537*x)
                          c = c/100000.0;
                          dert = b*b-4*0.0007807*c;
                          dert = sqrt(dert);
                          y1 = b+dert;
                          y2 = b-dert;
                          y1 = 0-(y1/15614.0);
                          y2 = 0-(y2/15614.0);
例如我要进行这样的运算

点评

你这是在求解一元二次方程么? 正如我之前说的,小数运算多了比较耗时间和资源… 你可以适当优化算法,运用数学方法事先计算部分中间变量,降低额外的运算量。 另外,浮点型数据不怕做乘除,怕加减。整型数据不怕  详情 回复 发表于 2015-7-17 16:44
 
 
 

回复

2886

帖子

0

TA的资源

五彩晶圆(初级)

5
 
如果你的msp430带硬件乘法器,就用硬件乘法器吧。
也可以用数学库
 
个人签名昵称:灰小子
 
 

回复

1193

帖子

0

TA的资源

纯净的硅(高级)

6
 
hnsdyd 发表于 2015-7-17 11:19
x = (3.603-adc0)/0.03203;
                          x = find_x(x);
                          b = (376*x-15370);
                          b = b/1000000.0;
                         ...

你这是在求解一元二次方程么?
正如我之前说的,小数运算多了比较耗时间和资源…
你可以适当优化算法,运用数学方法事先计算部分中间变量,降低额外的运算量。
另外,浮点型数据不怕做乘除,怕加减。整型数据不怕加减,怕乘除。了解这个规律之后可以适当降低精度,将加减换算成整型再运算。

点评

对了,版主,我还有一个问题: 就是430内部的硬件乘法器怎么用?我可不可以把这些计算都弄到乘法器里  详情 回复 发表于 2015-7-18 22:59
确实是想解一元二次方程  详情 回复 发表于 2015-7-18 10:09
 
 
 

回复

42

帖子

0

TA的资源

一粒金砂(中级)

7
 
qiushenghua 发表于 2015-7-17 16:44
你这是在求解一元二次方程么?
正如我之前说的,小数运算多了比较耗时间和资源…
你可以适当优化算法, ...

确实是想解一元二次方程
 
 
 

回复

42

帖子

0

TA的资源

一粒金砂(中级)

8
 
qiushenghua 发表于 2015-7-17 16:44
你这是在求解一元二次方程么?
正如我之前说的,小数运算多了比较耗时间和资源…
你可以适当优化算法, ...

对了,版主,我还有一个问题:
就是430内部的硬件乘法器怎么用?我可不可以把这些计算都弄到乘法器里

点评

如果是整数乘法或者浮点数乘法,应该会自动调用乘法器的。 具体用不用,应该要看编译器怎么处理,我没研究过。 我不看好浮点数的加减运算,小数点不对齐怎么加减?  详情 回复 发表于 2015-7-18 23:58
 
 
 

回复

1193

帖子

0

TA的资源

纯净的硅(高级)

9
 
hnsdyd 发表于 2015-7-18 22:59
对了,版主,我还有一个问题:
就是430内部的硬件乘法器怎么用?我可不可以把这些计算都弄到乘法器里

如果是整数乘法或者浮点数乘法,应该会自动调用乘法器的。
具体用不用,应该要看编译器怎么处理,我没研究过。
我不看好浮点数的加减运算,小数点不对齐怎么加减?
 
 
 

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

随便看看
查找数据手册?

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
快速回复 返回顶部 返回列表