【发布时间】:2009-04-22 19:05:56
【问题描述】:
我有一个从 c 程序调用的简单汇编函数,我必须使用需要内存操作数的指令 (FIDIV)。
将值移动到[esp - 2] 并在下一条指令中使用它是否安全,或者以这种方式使用堆栈永远不安全?
我知道有很多解决方法,我真的不再需要这个了,所以现在只是好奇。
【问题讨论】:
-
附注 - 如果您在汇编例程中使用 FPU 寄存器,系统或 C 编译器可能希望您保存 FPU 的状态并在返回之前恢复它。