最近打算重新拾起汇编和exploit方面的知识  看书时发现对栈操作 EBP和ESP这些东西都快忘记了

搜到一篇文章  讲得很详细  特地记录一下

http://learn.akae.cn/media/ch19s01.html

要点是: stack在内存里是从高地址向低地址增长的  是FILO的结构

EBP指向栈底的内存地址(低地址) ESP指向栈顶的地址(高地址)

在一个函数调用里面 EBP不变 ESP随着push和pop的操作变化

push时ESP-4(压栈  栈向低地址增长)   pop时ESP+4(出栈 栈向高地址回溯)

函数的局部变量都是通过EBP加减偏移量来寻址