大家有兴趣看汇编,看看这个,cu上刚看到
.L0:addl (%eax,%edx,4), %ecx
incl %edx
cmpl %edi,%edx
jl .L0
.L1
addl (%eax),%ecx
addl $4,%eax
cmpl %edx,%eax
jb .L0
请问第一个迭代要几个指令周期?第二个呢?为什么?
----------------解决方案--------------------------------------------------------
没意义。。。。不同CPU不同的优化方式。。。
[color=white]
----------------解决方案--------------------------------------------------------
前者使用基址比例变址寻址,后者使用寄存器间接寻址……
可以认为,前者是数组,后者是指针……
不过同意飞燕的观点,没什么意义……
[[it] 本帖最后由 StarWing83 于 2008-5-3 23:48 编辑 [/it]]
----------------解决方案--------------------------------------------------------
顶,8错8错
----------------解决方案--------------------------------------------------------
对了,考虑在x86上,周期是多少,只看指令。。。
----------------解决方案--------------------------------------------------------
都不愿说算了,第一个是2个周期,第二个是3个周期,不知对否?
我也有点糊涂。。
----------------解决方案--------------------------------------------------------
addl 添加的意思???
cmpl 比较???
其他不懂```
哎``````
----------------解决方案--------------------------------------------------------
不太懂上面的语法,hehe~~~
----------------解决方案--------------------------------------------------------