我们有一个问题是Ci++
和++i
C之间有性能差异吗?
C++的答案是什么?
来自Ira Baxter回答,为什么INC和DEC指令不会影响进位标志(CF)?
大多数情况下,我远离
INC
而DEC
现在,因为他们做的部分条件代码更新,这样就可以在管道中引起滑稽的摊位,和ADD
/SUB
没有.因此,无关紧要(大多数地方),我使用ADD
/SUB
避免失速.我使用INC
/DEC
仅在保持代码较小的情况下,例如,适合高速缓存行,其中一个或两个指令的大小产生足够的差异.这可能是毫无意义的纳米[字面意思!] - 优化,但我在编码习惯上相当老派.
我想问一下为什么它会导致管道中的停顿,而添加不会?毕竟,无论是ADD
和INC
更新标志寄存器.唯一的区别是INC
不更新CF
.但为什么重要呢?