objdump:
8b 44 f4 18 mov 0x18(%esp,%esi,8),%eax
att syntax: displacement(base, index, scale)
mov
8B /r MOV r16,r/m16 2/4 Move r/m word to word register 8B /r MOV r32,r/m32 2/4 Move r/m dword to dword register
44 -> mod reg r/m 01 000 100 reg:000 -> %eax
mod 01 表示 8bit displacement(0x18)
r/m 100, 所以下一個也是 modrm (SIB)
f4 -> mod reg r/m 11 110 100 這代表著
scale index base
11 110 100
8 %esi %esp
若是 mode 10 表示 32 bit displacement。
ex:
8b 84 f4 32 54 76 98 mov -0x6789abce(%esp,%esi,8),%eax
44 -> 84od reg r/m 10 000 100
解說完畢。
沒有留言:
張貼留言
使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。
我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。