概念 当调用某处的函数时,函数一般会使用堆栈作为存储的对象,这里就涉及到了堆栈使用结束后,如果不将堆栈及时还原而直接RETN,就会造成EIP的值被改变(00000000),从而导致程序运行错误,因此,每次分体函数执行完毕后,都应该将使用过的堆栈还原到使用之前的内容。如果通过堆栈传递参数了,那么在函数执行完毕后,要平衡参数导致的堆栈变化。 内平栈 RETN 8相当于RETN之后再让mov exp,8