C语言中如何调用汇编子程序?给个例子讲解下

C语言中如何调用汇编子程序?给个例子讲解下,第1张

你是指内联汇编吧?比如下面这个例子:

#include <stdio.h>

int func(int a, int b)

{

 return a - b

}

int main()

{

 //计算 12-5

 int 饥磨旦a = 12, b = 5  //给定两个数

 int res    //用来记录结果

 __asm{     //内联汇编

  push b    //b压栈

  push a    //a压栈,注意C中函数接受参数的时候入栈是反烂扰着的

  call func   //调用游唯函数func, 返回值保存在eax里

  mov res, eax  //将eax里的值赋给res

 }

 printf("%d\n", res) //输出结果,得到7

 return 0

}

如果汇编语言自己调用就用个call 就行了,给你举个例子:在运行到需要调用的时毁拆候这样用:

call crlf //这里调用crlf这个子程序灶扰

crlf proc near //这里写纤辩枣名为crlf的子程序

//子程序代码

ret

crlf endp


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12496319.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存