c语言内联汇编如何理解

美女程序员鼓励师

1、内联汇编在 C/C++代码中嵌入的汇编代码相当于用汇编语句写的内联函数。优点是效率高。

2、使用asm关键词实现。

内联汇编之所以如此有用,主要是因为它可以操作C语言变量,比如从C语言变量获取值,输出值到C语言变量。因为这个能力,asm作为汇编指令和包含它的C程序之间的接口。

实例

#include <stdio.h>

#include <stdlib.h>

 

int main(void)

{

/* basic command demo */

__asm__("movl %eax, %ecx");

 

/* set b = 10 */

int a = 10, b = 0;

__asm__("movl %1, %%eax;"

     "movl %%eax, %0;"

     :"=r" (b) /* output */

     :"r" (a) /* input */

     :"%eax" /* clobbered register */

     );

 

printf("%s: b = %d\n", __func__, b);

return 0;

}

以上就是c语言内联汇编的理解,希望对大家有所帮助。更多C语言学习指路:C语言教程

本教程操作环境:windows7系统、C11版,DELL G3电脑。

以上是 c语言内联汇编如何理解 的全部内容, 来源链接: utcz.com/z/545906.html

回到顶部