1
我試圖讓86對LEA指令良好的抓地力:86 lea指令
leal (%edx, %edx, 4), %eax
leal (%edx, %edx, 2), %eax
鑑於這兩條線,我知道:
eax = edx + edx*4
然後
eax = edx + edx*2
兩個問題。首先,如果這些指令按照本例中的順序出現,那麼一旦第二行執行,eax寄存器就會被覆蓋?什麼會被加載到寄存器中?另一個地址?或者這是對這些寄存器指向的值進行算術運算?
可能重複http://stackoverflow.com/questions/9153282/lea-assembly在EDX值 - 指令) – Grizzly 2012-02-06 00:25:09
如何下載英特爾(AMD)CPU手冊並閱讀它們? – 2012-02-06 02:05:22
你也可以通過http://www.agner.org/optimize/ – Gigi 2012-02-06 02:17:00