是否比Java中的乘法和除法更快地移位?。净?如果您恰好使用2的幂,则左右移位显然比大多数甚至所有CPU上的乘法和除法运算更快。但是,它可能会降低某些读取器和某些算法的代码清晰度。位移对于性能是否真的是必要的,或者我是否可以期望编译器或VM注意到这种情况并对其进行优化(特别是当2的幂是文字时)?我主要对Java和.NET行为感兴趣,但欢迎深入了解其他语言实现。
3 回答
ABOUTYOU
TA贡献1812条经验 获得超5个赞
几乎任何有价值的环境都会为您优化这一点。如果没有,你就会有更大的鱼来炸。说真的,不要再浪费一点思考这个。你会知道什么时候出现性能问题。运行探查器后,您将知道导致它的原因,并且应该非常清楚如何修复它。
你永远不会听到有人说“我的应用程序太慢,然后我开始随机更换x * 2
,x << 1
一切都被修复了!” 性能问题通常通过找到一种方法来减少工作量来解决,而不是通过找到一种方法来快速完成相同的工作。
- 3 回答
- 0 关注
- 452 浏览
添加回答
举报
0/150
提交
取消