在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 5116|回复: 8

这个东东必须用浮点数吗?带有数据

[复制链接]
发表于 2004-4-30 18:10:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
带有小数点的数据加减乘除是否必须用浮点数处理?
定点数行否?
我要将单片机采集的12位二进制数0~FFFH转换为0~60MPa的工程值,
y=0.0147*X,
用定点数能否表示0.0147这个小数?
其中y为工程量MPa,X为单片机采集到的原始二进制数
请高手帮帮俺吧,时间催得有些急!!!!
谢谢噢
发表于 2004-4-30 20:16:07 | 显示全部楼层

这个东东必须用浮点数吗?带有数据

其实无所谓定点浮点。你也可以用16bit来表示有小数点的数值,例如12bit整数+4bit小数。但是两个这样的数相乘后,小数点去了哪个位置,你自己要十分清楚才行。
关键是你先要确定你所要表达的数的最大值和分辨率,这样才能通过计算得出你能不能用类似定点的表达格式来表示这个浮点数。
发表于 2004-4-30 21:45:35 | 显示全部楼层

这个东东必须用浮点数吗?带有数据

你的问题实际上是工程量变换问题。我这里给个建议,供参考:
取工程量变换系数=f0h,与左移4位的12位二进制数0~FFFH进行无符号乘法,乘积的小数点在左边第6位。这里假设你的最大工程量值为60MPa,工程量值取小数1位。
那么:
0000h->0000h x f0h = 0000(00)h -> 000000.00 00000000b, 0.0MPa
0800h->8000h x f0h = 7800(00)h -> 011110.00 00000000b, 30.0MPa
09ffh->9ff0h x f0h = 95f1(00)h -> 100101.01 11110001b, 37+0.48=37.5MPa
0fffh->fff0h x f0h = eff1(00)h -> 111011.11 11110001b, 59+0.985=60.0MPa
 楼主| 发表于 2004-5-8 10:27:33 | 显示全部楼层

这个东东必须用浮点数吗?带有数据

谢谢版主
发表于 2011-5-18 10:08:31 | 显示全部楼层
学习学习
发表于 2011-5-20 14:02:25 | 显示全部楼层
no need
发表于 2014-10-23 21:06:45 | 显示全部楼层
用定点数省钱!
发表于 2014-10-23 21:09:50 | 显示全部楼层
其实要看你用的MCU里面是否带有FPU,就是浮点处理单元,如果有你用浮点编程当然容易,但是如果没有,用定点数,就需要你对定点数算法非常熟悉
发表于 2015-11-23 19:31:25 | 显示全部楼层
用浮点数???
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 04:46 , Processed in 0.037973 second(s), 11 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表