c语言内联汇编解读

飞鸟 3月 1, 202207:18:08c++学习评论83阅读模式

c语言内联汇编解读文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

1、内联汇编在 C/C++代码中嵌入的汇编代码相当于用汇编语句写的内联函数。优点是效率高。文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

2、使用asm关键词实现。文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

内联汇编之所以如此有用,主要是因为它可以操作C语言变量,比如从C语言变量获取值,输出值到C语言变量。因为这个能力,asm作为汇编指令和包含它的C程序之间的接口。文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

实例文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

#include<stdio.h>文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

#include<stdlib.h>文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

intmain(void)文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

{文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

/*basiccommanddemo*/文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

__asm__("movl%eax,%ecx");文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

 文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

/*setb=10*/文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

inta=10,b=0;文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

__asm__("movl%1,%%eax;"文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

"movl%%eax,%0;"文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

:"=r"(b)/*output*/文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

:"r"(a)/*input*/文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

:"%eax"/*clobberedregister*/文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

);文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

 文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

printf("%s:b=%d\n",__func__,b);文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

return0;文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

以上就是c语言内联汇编的理解,希望对大家有所帮助。文章源自飞鸟学习网-https://www.pk88.net/2022-0301-3.html

全站资源源于网络整合,仅供学习研究,不可商用,不提供技术指导,如有侵权请告知删除,可以投稿,广告合作联系V: pk88net
weinxin
我的微信
微信扫一扫
  • 本文由 发表于 3月 1, 202207:18:08
  • 转载请务必保留本文链接:https://www.pk88.net/2022-0301-3.html
    免责声明
    非常感谢您的访问。在您使用本网站之前,请您仔细阅读本声明的所有条款。
    1、本网站属于个人网站,本分开放互享的原则,本网站的内容均为站长提供、网友推荐、互联网整理而来,仅用于广大网友学习研究使用,如有侵犯您的版权,请及时联系我们,本站将及时纠正。
    2、本站内容不保证其完整性、正确性,但是我们会尽最大努力去确保提供信息的完整性及正确性,且不对因信息的不正确或遗漏导致的任何损失或损害承担责任。
    3、对由于使用本站所产生的任何直接、间接或偶然性的损失或破坏,无论该损失或破坏是否源于疏忽、违约、诽谤、侵权甚至电脑病毒等原因造成的,本网站概不负责,亦不负任何法律责任。
    4、本网站所有内容(网络,素材、图片),其版权均归原作者所有,在转载有关文章时务必尊重该文章的著作权,保留其来源,并自负版权等法律责任。
    5、本声明未涉及的问题参见国家有关法律法规,当本声明与国家法律法规冲突时,以国家法律法规为准。
    6、本站文章内容,如果来源于互联网,我们会标明其来源,如果属于本站原创整理互联网资料,请您转载或者使用该文章时尊重本站及其互联网作者的著作权,注明其来源。
    7、互联网的本质是自由与分享,我们真诚的希望,本站的每一份正能量能带给正在访问本网站的您提供有效的帮助,并且能在互联网自由传播。希望大家多多支持本站。
广告也精彩
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: