2019-07-20 17:06发布
yyx112358 发表于 2017-1-24 13:29 效果上相当于a=a*b;但是实际的效率更高 a=a*b;实际上是这样的: 1.生成a的副本,记为a'
最多设置5个标签!
a=a*b;实际上是这样的:
1.生成a的副本,记为a'
2.计算a'*b
3.将结果赋值给a
4.销毁a'
而a*=b;就只需要:
1.将a乘上b
详细了解需要汇编的知识,感兴趣可以去看
我个人觉得“*=的效率高”这点可能要看编译器吧
我试验过了IAR for ARM 6.7
分别从优化等级、变量位置(局部变量,全局变量)对比了a = a*b 和 a *= b汇编后的结果。
两个汇编后完全一致的。
一周热门 更多>