文章标题

    xiaoxiao2021-08-15  186

    数据定义伪操作

    .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

    最新回复(0)