在x86上的winapi __stdcall中,哪个寄存器是第二个参数?

时间:2015-02-15 07:42:52

标签: assembly x86 stdcall

在x86上的winapi __stdcall中,存储的第二个参数是什么寄存器? (ECX?) - 还有,我可以在哪里找到关于此的文档?

1 个答案:

答案 0 :(得分:3)

对于stdcall,参数存储在堆栈中,然后被调用者将其删除 第一个参数位于[esp + 4]
[esp + 8]的第二个参数 函数/被调用者的每次推动都会使ESP的这些偏移更大。

使用push ebpmov ebp,esp的默认序言,第一个参数位于[ebp + 8],第二个参数位于[ebp + 12]。