私はこれを正しく読んでいることを確認したいだけです:
movl 12(%ebp), %edx
leal (%edx, %edx, 4), %eax
最初の行を次のように読み取ります: edx = [epb + 12]
、2 行目を次のように読み取ります。eax = edx + edx*4
誰でも明確にできますか?
また、次の 2 行がある場合はどうなるでしょうか。
leal (%edx, %edx, 4), %eax
leal (%edx, %edx, 2), %eax
2 行目が実行されると、eax
レジスタは上書きされますか?
そして、eax = edx + edx*4
アドレスに4を掛けていますか?それとも4によるアドレスの内容?