Я пытаюсь изучить сборку MIPS, изучив MIPS Assembly Language Programming. В книге у меня есть этот код (извлеченного со страницы 37 книги):Исходные ошибки при сборке источника сборки MIPS
.data
prompt: .asciiz "\n Please Input a Value: "
bye: .asciiz "\n Bye!"
.globl main
.text
main:
li $v0, 4
la $a0, prompt
syscall
li $v0, 5
syscall
beqz $v0, end
move $a0, $v0
li $v0, 1
syscall
b main
end:
li $v0, 4
la $a0, bye
syscall
li $v0, 10
syscall
У меня есть cross-compiled binutils, ориентированные на mips-elf
, но когда я попытался Собираю код, я получил некоторые ошибки
[email protected]:~/Desktop$ mips-elf-as test-mips.asm
test-mips.asm: Assembler messages:
test-mips.asm:8: Error: illegal operands 'li'
test-mips.asm:9: Error: illegal operands 'la'
test-mips.asm:12: Error: illegal operands 'li'
test-mips.asm:14: Error: illegal operands 'beqz'
test-mips.asm:15: Error: illegal operands 'move'
test-mips.asm:16: Error: illegal operands 'li'
test-mips.asm:22: Error: illegal operands 'li'
test-mips.asm:23: Error: illegal operands 'la'
test-mips.asm:26: Error: illegal operands 'li'
[email protected]:~/Desktop$
Я использую x86 Ubuntu Hardy Херрон для кросс-компиляции для MIPS
Что не так?
Вы можете увидеть мой вопрос здесь http: // stackoverflow.com/questions/9403667/mips-hex-output/9403758 # comment11954218_9403758 и дать ответ о том, для чего процесс заключается в том, чтобы скомпилировать файл .s как вы уже указывали в объектный файл? Спасибо – NickHalden