Я новичок на собрании, и у меня с этим возникают определенные трудности.Сборка MIPS: напечатайте номер, который был введен
Я использую MARS 4.5, и я хочу попытаться написать код, который может взять целое число с клавиатуры и распечатать его сразу же.
.data
number: .word
.text
.globl main
main:
li $v0, 5
syscall
move $v0, $a0
li $v0, 1
la $a0, ($v0)
syscall
li $v0, 10
syscall
, но когда я запустил это, он возвращает значение 1, независимо от того, что такое вход.
Проблема, похоже, в команде «la $ a0, ($ v0)».
Хотя я загрузил адрес регистра $ v0, который содержит номер входа в стандартный регистр для печати целых чисел, он может работать.
Как я могу это решить?
Регистры не имеют адресов, а функция целых чисел печати в любом случае требует значения, а не адреса. Поэтому просто удалите эту строку, и она должна работать. – Jester
Удалив команду адрес загрузки, она возвращает 0 – Coursal
Вы также получили обратные операнды 'move'. – Jester