为什么除法操作通常在计算机中使用更多资源

时间:2011-02-24 23:55:46

标签: c math

我正在读一本C书。在算术表达式部分,他们说:

“分部通常使用更多的资源。为了避免分裂,我们乘以而不是分割。例如,我们乘以0.5而不是除以2.0。”

为什么分部通常会使用更多资源?请问有人能给我详细解释吗?

非常感谢。

1 个答案:

答案 0 :(得分:6)

二进制乘法使用农民算法很简单 - 你基本上移位,然后求和:http://en.wikipedia.org/wiki/Multiplication_algorithm#Peasant_or_binary_multiplication

二进制分区要困难得多,因为这是一系列减法(比如你可能在学校做过的长分)。主算法类称为'radix',您可以在此处看到一个示例:http://www.bearcave.com/software/divide.htm

请记住 - 首先测量,然后优化。与已经优化的代码相比,维护与问题域匹配的代码要容易得多。