EDA365电子论坛网

标题: 内嵌汇编指令的语法格式 [打印本页]

作者: Pang8343569    时间: 2016-6-4 14:52
标题: 内嵌汇编指令的语法格式
在C语言程序中嵌入汇编语言程序可实现一些感激语言没有的功能,并可提高执行效率armcc和armcpp内嵌汇编器支持完整的ARM指令集;tcc和tcpp用于Thumb指令集。但是内嵌汇编器并不支持诸如直接修改PC实现跳转的底层功能。6 |$ }+ G% E( g
内嵌的汇编指令包括大部分ARM指令和Thumb指令,但是不能直接饮用C语言的变量定义,数据交换必须通过ATPCS进行。嵌入式汇编在形式上表现为独立定义的函数体。' H1 _' E# Q. k) f' m+ v0 O

# C5 s3 i4 I' A+ f_ _asm(“指令[;指令]”);
; ?' s/ k2 {, h* V" P" D! oARM C汇编器使用关键字“_ _asm”,如果有多条汇编指令需要嵌入,则可用“{}”将它们归为一条语句。例如:2 e, {9 z8 J9 l% U
_ _asm" B# a: D+ c: p' H" W+ z4 q
: P8 D) D8 ^" f! p5 S) A3 x% i% b
指令[;指令]
+ c: g$ [, K# a4 k% c$ f& j..." v5 E' ^) m* Q3 x+ @3 M3 C2 T
[指令]3 B2 o6 i0 a/ t) E. h
/ O" |) Y% l* X. v$ Q( x
各指令用“;”分隔。如果一条指令占据多行,除最后一行外都要使用连字符“\”。在汇编指令段内可使用C语言的注释语句。需要特别注意的是,_ _asm是两个下划线。
作者: xuzwg    时间: 2016-12-6 11:00
非常感谢
作者: soswelcome    时间: 2017-9-13 09:09
非常感谢
作者: Haiting32451    时间: 2017-9-30 16:08

* f& J6 f+ ]5 l4 |& u. y+ A0 W非常感谢




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2