当前位置: 代码迷 >> 汇编语言 >> 菜鸟的烦恼-关于push的用法
  详细解决方案

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

热度:9255   发布时间:2013-02-26 00:00:00.0
初学者的烦恼--关于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里面,也成功将“浮点数”压栈
不过通常不会直接压立即数...
  相关解决方案