当前位置:  开发笔记 > 编程语言 > 正文

这几天什么时候使用固定点

如何解决《这几天什么时候使用固定点》经验,为你挑选了4个好方法。

对于强烈的数字运算,我正在考虑使用固定点而不是浮点数.当然,固定点类型的大小,它将运行在什么CPU上,如果我可以使用(对于英特尔)MMX或SSE或任何新的东西出现的问题...

我想知道这些日子浮点运行速度是否比以往任何时候都快,是否值得考虑固定点?是否有一般的经验法则,我们可以说它的重要性超过百分之几?35,000英尺数值性能的概述是什么?(顺便说一句,我假设大多数计算机都有通用CPU,而不是DSP或专用嵌入式系统.)



1> John Milliki..:

它仍然值得.浮点比过去快,但定点也是.如果您关心IEEE 754保证的精度,那么固定仍然是唯一的方法.


+1,你有没有用于验证不同架构的基准测试软件.我通过分析得出了相同的结论,但这是一项相当多的工作,结果只与我测试的特定硬件有关.有兴趣了解ARM与移动设备以及更常见的Intel和AMD之间的差异.

2> SmacL..:

在处理大量数据的情况下,固定点可以是内存效率的两倍,例如四字节长整数而不是八字节双精度.通常在大型地理空间数据集中使用的技术是将所有数据减少到共同的原点,使得最高有效位可以被处理掉,并且对于其余部分使用定点整数.浮点只有在点确实浮动时才重要,即您以非常高的精度处理非常广泛的数字.


关于浮点"浮动"部分的好评 - 让我的思绪大开,在逆向上显而易见.

3> ddimitrov..:

使用固定小数的另一个好理由是舍入更加简单和可预测.大多数财务软件使用具有半偶数舍入的定点任意精度小数来表示金钱.



4> Tim Ring..:

它几乎总是更快地使用定点(x86,pentium,68k和ARM的经验).但是,它也可以取决于应用程序类型.对于图形编程(我主要使用固定点之一)我已经能够使用预构建的余弦表,日志表等来优化代码.但是基本的数学运算也证明更快.

对财务软件的评论.在之前的回答中说,固定点对于财务计算很有用.根据我自己的经验(开发大型资金管理系统和丰富的信用卡处理经验),我不会使用固定点.使用浮点或固定点会出现舍入误差.我们总是使用全部金额来表示货币金额,计算可能的最小金额(欧元或美元为1c).这确保不会丢失部分金额.在进行复杂计算时,将值转换为双精度数,应用特定于应用程序的舍入规则,并将结果转换回整数.

推荐阅读
mobiledu2402851323
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有