C 是否可以使用添加sp等恢复堆栈
在我的程序中,我在堆栈上推送一些值C 是否可以使用添加sp等恢复堆栈,c,assembly,stack,C,Assembly,Stack,在我的程序中,我在堆栈上推送一些值 for (i=0;i<i2;i++) { _asm { mov eax,i // i here is an (int) push eax } } 只要算术正确,那就行了。我的老毛病是在这类事情上一个接一个地发作 您还可以查看和说明来执行类似操作。不完全确定它是否有效,但最后一个操作似乎只需LEA ESP、[ESP+4*EAX]即可完成。保存一个额外
for (i=0;i<i2;i++)
{
_asm
{
mov eax,i // i here is an (int)
push eax
}
}
只要算术正确,那就行了。我的老毛病是在这类事情上一个接一个地发作
您还可以查看和说明来执行类似操作。不完全确定它是否有效,但最后一个操作似乎只需
LEA ESP、[ESP+4*EAX]
即可完成。保存一个额外的乘法,并保持您的条件标志不变
for (i=0;i<i2;i++)
{
_asm
{
pop eax // eax in not used later
}
}
i=i2*sizeof(int);
_asm
{
add sp,i
}