声明
毕生所学!术语不对,做法不恰当也没办法,毕竟只知道这么点。
基础
参考学长发的汇编入门
函数
可能上面的教程差的就是函数怎么写了
首先两个寄存器很重要ebp
和esp
ebp
表示当前函数的栈空间的首地址
esp
是当前栈顶
push
的时候就会把esp
减4,注意是减,不是加,栈从高地址向低地址扩展
也可以sub esp, 0x4
,分配局部变量的空间的时候就是这样做的
// 一个递归的函数
fun(int v1, int v2)
{
v1 = v1 + 1;
if (v1 <= v2)
v1 = fun(v1, v2);
return v1