首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

个指令的意思

2013-09-05 
求助个指令的意思debug的时候有一个汇编指令retf 0002是什么意思,我只知道有retf指令,后面多个0002是什么

求助个指令的意思
debug的时候有一个汇编指令retf 0002是什么意思,我只知道有retf指令,后面多个0002是什么意思呢?
最好用汇编指令解释下。
[解决办法]
当函数的调用约定为__stdcall的时候,堆栈中的参数由被调用的函数在返回后清除,使用的指令是 ret X,X表示参数占用的字节数,CPU在ret之后自动弹出X个字节的堆栈空间。称为自动清栈。函数在编译的时候就必须确定参数个数,并且调用者必须严格的控制参数的生成,不能多,不能少,否则返回后会出错。 这也就说明了,为什么__stdcall调用约定的函数的参数个数,必须是固定个数的.
[解决办法]
retf 还是 ret 意义类似吧。
retf x 的作用等同于

  retf 
  add  sp,x
x 就是调用相应子程参数压栈所用到的字节数。

热点排行