您的位置:首页 > 其它

都是小问题..以后集合到一起发.

2006-12-18 13:10 260 查看
call procname

procname:
   push ebp ; preserve base pointer
   mov ebp, esp ; stack pointer into ebp

   ; write your assembler code here

   mov esp, ebp ; restore stack pointer
   pop ebp ; restore base pointer

 ret

label:

ebp 指向何处?为何要入栈?
esp 指向何处?是不是指向刚才我push的地址(也即栈顶)?
为何他要mov ebp, esp 再mov esp, ebp, 我认为没必要把esp的内容存到ebp中啊。
这是建立一个程序调用时的框架堆栈帧,
  push ebp ; 建立堆栈帧
  mov ebp, esp

  mov esp, ebp ; 取消堆栈帧
  pop ebp
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: