之前的课程里面我们已经讲过了:
1.什么是函数2.什么是参数3.通过寄存器或者栈传递把参数传递给函数4.平衡栈一个复杂的函数内部往往会用到栈,而ESP是存储的栈顶的值,栈顶会随着放入数据而发生改变,所以定位参数不太方便.push 0x1push 0x2push 0x3call 函数push ecxpush edxpush ebx为什么要把这三个寄存器存起来呢?因为函数执行的时候,我们假设要用到这三个寄存器.等函数运行完成之后,再把这三个寄存器的数据还原.
本文共 299 字,大约阅读时间需要 1 分钟。
之前的课程里面我们已经讲过了:
1.什么是函数2.什么是参数3.通过寄存器或者栈传递把参数传递给函数4.平衡栈一个复杂的函数内部往往会用到栈,而ESP是存储的栈顶的值,栈顶会随着放入数据而发生改变,所以定位参数不太方便.push 0x1push 0x2push 0x3call 函数push ecxpush edxpush ebx为什么要把这三个寄存器存起来呢?因为函数执行的时候,我们假设要用到这三个寄存器.等函数运行完成之后,再把这三个寄存器的数据还原.
转载于:https://www.cnblogs.com/xiaodaxiaonao/p/7341529.html