黑马程序员技术交流社区
标题:
++i 比 i = i +1 快吗?
[打印本页]
作者:
wslinke
时间:
2015-4-17 11:38
标题:
++i 比 i = i +1 快吗?
本帖最后由 wslinke 于 2015-4-17 13:47 编辑
++i 比 i = i +1 快吗?
还是只是代码书写方便
作者:
xiniuniu
时间:
2015-4-17 12:22
能过观察反汇编代码, 两者的实现是一样的, 只是为了写法上的方便
Snip20150417_5.png
(178.19 KB, 下载次数: 22)
下载附件
2015-4-17 12:18 上传
int i = 1; movl $0x1, -0x8(%rbp) 表示把1以4字节空间大小直接复制到 rbp-8所在地址
++i;
movl -0x8(%rbp), %ecx // 把i的值以4字节大小 复制到ecx寄存器中
addl $0x1, %ecx // 让ecx寄存器中数值加1
movl %ecx, -0x8(%rbp) // 再把ecx寄存器中的值复制回 i所在内存
复制代码
i = i + 1; 同上
作者:
uibe
时间:
2015-4-17 12:49
快啊,运算可以提高效率,,省略了运算符号
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2