Re: [問題] ret

看板CSIE_ASM作者 (zha0)時間19年前 (2006/11/24 10:56), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《braveforever (braveforever)》之銘言: : 當procedure執行到ret n 時, : 投影片上說會有兩個動作,先把 EIP=SS:ESP ---(1) 這裡因該打 EIP=SS:[ESP] 會比較好一點. 因為是取 ESP 所指向的記憶体內容 :        然後 ESP=ESP+4+n ---(2) : 但是在執行(1)之後,CPU下一個執行的指令該為EIP所指到的那一行, : 那麼(2)就不會被執行到?! (2) 還是會被執行到的,因為那是 CPU 自己幫你作掉的動作, 而且那個 n 是指 Byte 如果你今天是在 32 bits 的環境下, 那他就是 4 的部數,也就是看你在 CALL 指令的上面要還原多少。 你可以用 Ollydbg 去看看 Win32 API 的作法,__stdcall 的這種方式, 都是使用 ret n 的方法在清參數的 . -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.8.99.35
文章代碼(AID): #15PbzN3a (CSIE_ASM)
討論串 (同標題文章)
本文引述了以下文章的的內容:
問題
1
1
完整討論串 (本文為第 2 之 2 篇):
問題
問題
1
1
文章代碼(AID): #15PbzN3a (CSIE_ASM)