逆向工程核心原理——第五章
Posted lex-shoukaku
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逆向工程核心原理——第五章相关的知识,希望对你有一定的参考价值。
栈
栈的作用:
1.暂时保存函数内的局部变量。
2.调用函数时传递参数。
3.保存函数返回后的地址。
栈储存数据的原则:FILO(first in last out).
简单的来说,栈类似于一个桶,数据进入后,会一层一层往上堆叠,所以最先进去的数据,要上面的数据都拿走之后,才能出来。
如图所示,数据按照a1,a2,a3的顺序入栈,所以出栈的顺序就为a3,a2,a1。
更加抽象一些就是这样:最开始的栈顶指针(ESP)指向的栈底,随着PUSH指令将数据压入栈,ESP也会往上指;而随着POP指令将数据拿出栈,ESP就会往下指。
以上是关于逆向工程核心原理——第五章的主要内容,如果未能解决你的问题,请参考以下文章