我有我知道有效的代码(它来自我的教授),但我真的不明白我应该在哪里看到程序输出。我看到寄存器发生了变化(不是我完全遵循它),但程序应该要求用户输入一个值,我看不出它会这样做。没有弹出窗口询问我的值,而 QtSpim 似乎只是坐在那里。我点击运行,然后跨步,但没有任何反应。
这是代码:
# Sample spim program
#
.data
prompt: .asciiz "Enter in an integer: "
str1: .asciiz "the answer is: "
newline: .asciiz "\n"
bye: .asciiz "Goodbye!\n"
.globl main
.text
main:
# initialize
li $s0, 10
# prompt for input
li $v0, 4
la $a0, prompt
syscall
# read in the value
li $v0, 5
syscall
move $s0, $v0
loop:
# print str1
li $v0, 4
la $a0, str1
syscall
# print loop value
li $v0, 1
move $a0, $s0
syscall
# print newline
li $v0, 4
la $a0, newline
syscall
# decrement loop value and branch if not negative
sub $s0, $s0, 1
bgez $s0, loop
# print goodbye message
li $v0, 4
la $a0, bye
syscall
jr $ra # retrun to caller
我的 QtSpim 的屏幕截图。左下角写着“跑步”……但在哪里?