1
私はアセンブリでは初心者ですが、かなりの困難を抱えています。アセンブリ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
load addressコマンドを削除すると、0が返されます。 – Coursal
また、 'move'オペランドも逆になっています。 – Jester