从汇编程序中访问C程序变量

使用 LDM 和 STM 指令可以将少于 8 个字的小型结构作为整体进行访问。 可以使用适当类型的加载和存储指令来访问结构的单个成员。 为了访问成员,必须知道该成员从结构起始地址算起的偏移量。

 将整型全局变量 globvar 的地址加载到 R1,将该地址中包含的值加载到 R0,将它与 2 相加,然后将新值存回 globvar 中。

 访问全局变量

    PRESERVE8
    AREA     globals,CODE,READONLY
    EXPORT    asmsubroutine
    IMPORT    globvar
asmsubroutine
    LDR  R1, =globvar   ; read address of globvar into R1
    LDR  R0, [R1]       ; load value of globvar
    ADD  R0, R0, #2
    STR  R0, [R1]       ; store new value into globvar
    BX   lr
    END

你可能感兴趣的:(c,汇编,存储,import)