数据定义伪操作
.byte
.space cnt
0x01 分配 cnt个字节,初始化为
0x01
.short
.long/
.word
.quad
.float
.string/
.asciz/
.ascii .ascii "abcd\0"
注:
.ascii 需要加
'\0',其它不需要
汇编控制伪操作
.if logical expression
...
.else
...
.endif
.rep cnt
...
.endr
重复执行cnt次
#
C和汇编的混合编程
1. 汇编调用C
b main
2. C调用汇编
@C文件
extern void FUNC(
void);
int main(){
int a =
6;
FUNC();
a =
12;
}
@
asm 文件
FUNC:
mov r1,
#1
mov pc, lr;
3. C内联汇编
int main()
{
int a =
1;
asm
{
“mov r1,
#1\n”
“mov r2,
#2\n”
};
a =
2;
}
注意:C 和汇编互相调用要符合ATPCS/AAPCS 协议
转载请注明原文地址: https://ju.6miu.com/read-676364.html