slymitec 发表于 2023-7-13 16:19

YoshinoSakura 发表于 2023-7-13 16:22

可以啊,甚至古早的时候有小数整数分开存放的SQL建表设计。

slymitec 发表于 2023-7-13 16:23

Superdoll 发表于 2023-7-13 16:28

这个没有什么意义吧,既然定死了后三十二位,那就没有必要定义新数据类型,直接用int64, 然后左移右移三十二位即可,宏和online都可以.

slymitec 发表于 2023-7-13 16:31

xy. 发表于 2023-7-13 16:32

定点数优化不是什么新鲜玩意, 可以看 pixman 之类 2d 图形库的代码
但最大的可能是跑过 profiler 之后, 你发现自己优化后的逻辑比之前还慢

slymitec 发表于 2023-7-13 16:33

YsHaNg 发表于 2023-7-13 18:39

你说dfp?不过这还是浮点数 还是你要定点数 和int直接兼容

YsHaNg 发表于 2023-7-13 18:41

slymitec 发表于 2023-7-13 08:33
主要是CPU的浮点计算功能确实能使得优化后,比这样还快么?

power处理器上有dfp相关电路会快很多 但是power10之后是电阻丝用不上

zhuifeng88 发表于 2023-7-13 18:43

有而且意义很大, 现在也在ML推理,图像处理,信号处理这些领域应用非常普遍

zhuifeng88 发表于 2023-7-13 18:48

slymitec 发表于 2023-7-13 16:33
主要是CPU的浮点计算功能确实能使得优化后,比这样还快么?

不能, 但很多情况下不会投入那么多精力去做定点优化, 不深入优化只是改成定点计算的话反而变慢了是再正常不过的事情

Mufasa 发表于 2023-7-13 19:17

我编单片机时用过类似这种方法。

程序中精确到一微秒,显示时是按毫秒显示,精确到小数点后一位。

因为单片机浮点能力很弱,所以最好别让它处理小数。
直接用long int存储,以微秒为单位。
所有的运算都是整数运算。

在显示程序中,取数位时,注意一下就好。
单片机驱动数码管显示,小数点位置是用程序固定。
实际执行的是整数运算,把需要的那几位取出来显示。
页: [1]
查看完整版本: 如果定义域不大的情况下,用定点数代替浮点数,现在是否还有速度意义?