【发布时间】:2010-10-05 02:36:57
【问题描述】:
进行浮点除法的算法有哪些步骤?
为什么结果比乘法慢?
它的完成方式与我们手动除法的方式相同吗?反复除以除数,结果相减得到余数,再次对齐,直到余数小于某个特定值?
另外,为什么我们要提高性能而不是这样做
a = b / c
我们这样做
d = 1 / c
a = b * d
?
编辑: 基本上我问是因为有人要求我根据权重分配在竞争者之间分配一个值。我用整数完成了所有这些操作,后来被要求转换为浮点数,这导致性能下降。我只是想知道 C 或 C++ 将如何执行这些会导致缓慢的操作。
【问题讨论】:
-
相关:Floating point division vs floating point multiplication 了解现代 x86 的一些更详细的数字
标签: performance algorithm hardware