Delphi代码中嵌入asm代码,在asm代码中使用call 调用一个delphi函数,如果防止这个函数影响现寄存器的数据?
例如
asm
mov ecx 10h
mov edx 10h
call MyFunc //这个call内部会改变ecx 、edx或者其它任何寄存器。有什么办法能让除返回值的寄存器以外的寄存器都保持call前的状态?
test eax,eax
je @@aa
.....
end;
例如
asm
mov ecx 10h
mov edx 10h
call MyFunc //这个call内部会改变ecx 、edx或者其它任何寄存器。有什么办法能让除返回值的寄存器以外的寄存器都保持call前的状态?
test eax,eax
je @@aa
.....
end;