2015-12-01 3 views
-1

Попытки составить следующее для того, чтобы читать 5 байт полукокс из стандартного ввода:ARM11 плохой инструкция `Num RESB 5' Монтаж

.bss 
    num resb 5 

.text 
.global _start 
_start: 
     mov r0, $1 
     mov r1, num 
     mov r2, $5 
     mov r7, #3 
     swi $0 

Via следующего

as -o readstdin.o readstdin.s 

Но я получаю сборку ошибка:

readstdin.s: Assembler messages: 
readstdin.s:2: Error: bad instruction `num resb 5' 
readstdin.s:8: Error: immediate expression requires a # prefix -- `mov r1,num' 

Я запускаю это на ARM11 Raspberry Pi Zero.

+0

не является малиной pi Zero архитектурой 'ARMv6' –

ответ

0

gnu сборщик не использует resb. Вместо этого попробуйте .lcomm num, 5. Что касается mov r1, num Я думаю, вы действительно хотели сказать ldr r1, =num. Вы можете обратиться к manual.