[开发资料] 固定点数运算案例程序

[复制链接]
 楼主| szt1993 发表于 2024-3-6 13:00 | 显示全部楼层 |阅读模式
固定点数运算(Fixed-Poin Arithmetic)在某些嵌入式系统中,浮点运算会较慢或不被支持。因此,使用固定点数运算可以提供一种有效的浮点数近似解决方案。


  1. typedef int16_t fixed_t;

  2. #define FIXED_SHIFT 8
  3. #define FLOAT_TO_FIXED(f) ((fixed_t)((f) * (1 << FIXED_SHIFT)))
  4. #define FIXED_TO_FLOAT(f) ((float)(f) / (1 << FIXED_SHIFT))

  5. fixed_t fixed_multiply(fixed_t a, fixed_t b) {
  6.     return (fixed_t)(((int32_t)a * (int32_t)b) >> FIXED_SHIFT);
  7. }


LOVEEVER 发表于 2024-3-9 15:55 | 显示全部楼层
某些嵌入式系统中,浮点运算会较慢或不被支持
星辰大海不退缩 发表于 2024-3-11 13:39 | 显示全部楼层
使用固定点数运算可以提供一种有效的浮点数近似解决方案。
OKAKAKO 发表于 2024-3-11 17:21 | 显示全部楼层
固定点数运算是不是不适合数据精确的场合如机械臂运动//??
小小蚂蚁举千斤 发表于 2024-3-19 11:35 | 显示全部楼层
高精度浮点运算还是有必要的
小夏天的大西瓜 发表于 2024-3-19 13:51 | 显示全部楼层
固定点数运算(Fixed-Poin Arithmetic)在某些嵌入式系统中,浮点运算会较慢或不被支持。
中国龙芯CDX 发表于 2024-3-21 15:08 | 显示全部楼层
浮点运算会较慢或不被支持跟MCU性能以及架构有关系
jf101 发表于 2024-3-22 12:11 | 显示全部楼层
浮点运算在目前电机控制方面非常实用
 楼主| szt1993 发表于 2024-3-25 15:28 | 显示全部楼层
OKAKAKO 发表于 2024-3-11 17:21
固定点数运算是不是不适合数据精确的场合如机械臂运动//??

确实对于数据精确的场合还是建议使用高精度浮点运算
您需要登录后才可以回帖 登录 | 注册

本版积分规则

344

主题

2836

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部

344

主题

2836

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部