ARM程序集错误未定义对'a'的引用

时间:2016-09-30 23:07:59

标签: assembly arm

我正在运行ARM汇编代码来初始化数组a。我得到错误说 未定义的引用`a'。我正在使用gcc进行编译 这是代码

.text
.global main
main:
        ldr r0, addr_of_a    // r1 = *a
        mov r1, #0           // Index i
loop:   str r1, [r0]         // a[i] = i
        add r0, r0, r0, lsl #2   // Increment address by 4 bytes
        add r1, r1, #1       // r1 = r1 + 1
        cmp r1, #100
        bne loop
end:
        mov r0, r1
        bx  lr
addr_of_a: .word a

1 个答案:

答案 0 :(得分:0)

如同+ Notlikethat所示,您的'a'不存在。

您可以像下面的示例中那样相应地添加它:

.data
        a:      .asciz  "deadcode\n"

.data
        a:      .word   3,1,4,1,5,9