汇编和C相互调用

来源:互联网 发布:网络安全检查台帐 编辑:程序博客网 时间:2024/04/18 21:30
这里有几个原则:
1.调用者需要在调用前声明被调用者。
c的做法
void myprint(char* msg, int len);int choose(int a, int b){if(a >= b){myprint("the 1st one\n", 13);}else{myprint("the 2nd one\n", 13);}return 0;}

汇编的做法:
extern choose......pushnum2ndpushnum1stcallchoose

2.汇编提供给外部C调用的代码需要在汇编中做全局声明
global myprint

3.调用者需要负责清除堆栈
pushnum2ndpushnum1stcallchooseaddesp, 4
0 0
原创粉丝点击