【发布时间】:2019-12-13 03:37:41
【问题描述】:
我正在尝试创建一个 MIPS 程序,用户可以在其中设置他们想要输入的输入值的数量(最多 5 个值),然后输入这些值。
为此,我想使用一个循环来提示用户将值输入控制台,然后将该值从 $v0 移动到堆栈中。但我不确定如何在循环内增加堆栈指针。我最初尝试过类似的东西:
# Initialize t6 to zero, this is stack pointer value
add $t6, $zero, $zero
# Initialize stack to hold 5 register values
addi $sp, $sp, -20
# Load register value into stack
sw $vo, $t6($sp)
然后每次迭代将我的堆栈指针值增加 4。但我得到一个 '"$t6": 操作数类型不正确' 错误。有没有办法在循环内增加堆栈指针值?
是的,我确实知道我可以使用数组来做到这一点,但我正在尝试练习,以便我可以学会正确使用堆栈。提前感谢您的帮助!
【问题讨论】: