ebp,esp區(qū)別 push ebp ;ebp入棧
mov ebp, esp ;因?yàn)閑sp是堆棧指針,無(wú)法暫借使用,所以得用ebp來(lái)存取堆棧 sub esp, 4*5 ;下面的wsprintf一共使用了5個(gè)參數(shù),每個(gè)參數(shù)占用4個(gè)字節(jié),所以要入棧4*5個(gè)字節(jié) push 1111 push 2222 push 3333 push offset szFormat push offset szOut call wsprintf ;調(diào)用wsprintf add esp, 4*5 ;堆棧使用完畢,“還”回4*5個(gè)字節(jié)給系統(tǒng) ... mov esp, ebp ;恢復(fù)esp的值 pop ebp ;ebp出棧 ret 主要是用來(lái)保存/恢復(fù)堆棧,以便傳遞參數(shù)給函數(shù)。 |
|
|