读书人

菜鸟的烦恼-关于push的用法

发布时间: 2013-01-02 13:08:44 作者: rapoo

初学者的烦恼--关于push的用法
如下代码中,为什么我在 “push Angle2” 中,把 “Angle2”直接写出具体的浮点数字,比如 0.99877654321等会出错?
push的用法是否后面必须跟一个16进制整数 或者 变量 ?

非常感谢大虾的指导!


float Angle1=cos(Angle);
float Angle2=sin(Angle);
_asm
{

PUSH 0
PUSH Angle2
PUSH 0
PUSH Angle1

}


[解决办法]
push imm,立即数是整数,当然,你可以把浮点数转成整数写到代码里。
unsigned int i = *(int*)&f;
i显示出来的就是浮点格式直接转成uint的值,这个值就可以直接写到push里面,也成功将“浮点数”压栈
不过通常不会直接压立即数...

读书人网 >汇编语言

热点推荐