1
我有我認識的代碼(它來自我的教授),但我並不真正瞭解我應該在哪裏看到程序輸出。我看到寄存器發生變化等等(並不是我完全遵循它),但是程序應該要求用戶輸入一個值,而我看不出它是這樣做的。沒有窗口會彈出來問我價值,而QtSpim似乎只是坐在那裏。我跑了,然後一步一步走過,但沒有任何反應。使用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的屏幕截圖。左下角說'跑步',但是哪裏?
如果它正在運行,爲什麼模擬PC零?你應該看看模擬器的文檔(谷歌提出了幾個),也許有一些你錯過了 – Leeor