ARM代码给出非法指令

时间:2016-02-24 14:32:42

标签: assembly arm

运行代码时出现非法指令错误。没有编译错误 - 但即使我调试它只是给我这个错误。

以下是我目前使用的代码:

.global .fopen
.global .fclose
.global getc

.data
    fin: .word 0x00
    r: .asciz "r"
    format: .asciz "%d\n"
.global main
main:
    PUSH {R1}
    LDR R0, [R1, #0x04]
    LDR R1, =r
    BL fopen
    LDR R1, =fin
    STR R0, [R1]
    POP {R1}
endl:
    LDR R1, =fin
    LDR R0, [R1]
    BL fclose
_exit:
    MOV R7, #1
    MOV R0, #0
    SWI 0

1 个答案:

答案 0 :(得分:0)

归功于@EOF和@Notlikethat:

  

...你需要在main:之前编写.text,以指示汇编程序/链接器/加载程序将以下内容解释为可执行代码。    - @EOF

非常感谢你们!