知識點: PUSH POP CALL堆棧平衡 RETN指令 一、PUSH入棧指令 (壓棧指令): 格式: PUSH 操作數 //sub esp,4 ;mov [esp],EBP 操作數可以是寄存器,存儲器,或者立即數 二、POP出棧指令 (彈棧指令) 格式:POP 操作數 //mov EBP,[esp] ;add esp,4 操作數是寄存器,或者存儲器,不能是立即數 三、代碼分析 1、測試PUSH和POP 與ESP棧頂指針的關系 2、CALL與ESP的關系 3、總結棧的特點(后進先出) [EBP-??] // 局部變量 [ EBP+??] //上一個CALL 局部變量, 上一個CALL傳入參數 CALL PUSH EIP RETN POP EIP
