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

ipk*_*iss 6 c math

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

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

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

非常感谢.

Jos*_*osh 6

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

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

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