我需要接受一个字符串说:
hello world
并将每个单词存储到自己的寄存器中说:
$s0 and $s1
所以我以后可以操纵这些寄存器中的内容。我知道当接受用户的值时,$ a1寄存器包含指向每个单词的第一个字符的指针数组,我会陷入如何获取寄存器中的值并访问它们的问题。
谢谢!
更新
正如所指出的,我不能只将值添加到寄存器中,因此我需要获取每个单词的第一个字符并迭代每个字符来操作它们。我写了这段代码来获取字符串的第一个字符,但如果我将0($ s0)更改为1($ s1),我会得到一个越界错误
here is some code i have written to get the first character.
if i change 0($s0) to 1($s0)
我得到一个越界错误,所以我不能得到下一个字符
la $a0, prompt #print title
li $v0, 4
syscall
li $v0, 8
la $a0, input #store value
lw $a1, inputSize #store size
move $s0, $a0 #store string into character for safe keeping
syscall
la $a0, output #output string
li $v0, 4
syscall
lw $a0, 1($s0)
li $v0, 11 #print string
syscall