您好我是使用MIPS的新手,我只是对此措辞感到困惑,它可能非常简单,但我在笔记中找不到任何内容或专门针对此问题。
这是我的代码:
.data
val1: .word 1
val2: .word 2
val3: .word 3
.asciiz "Daniel"
.asciiz "Enter a number "
.asciiz "\n"
.globl main
.text
main:
addi $s0, $0, 23 # initializes the register $s0 to 23
lui $a0, 0x1001
ori $a0, $a0, 19
ori $v0, $0, 4
syscall
addi $v0, $0, 5
syscall
addi $s1, $v0, 0
我的问题是:我怎么样?将$ s1中的值存储到标有“val1”的数据段中?我知道如何将它存储到另一个寄存器但不是值,请谢谢!
答案 0 :(得分:0)
la $t0, val1
sw $s1, 0($t0)
$ t0被任意选择,您选择使用哪个寄存器来保存val1数组的基址并不重要。 la(加载地址)也是伪操作,因此请确保您能够首先使用它。