li $s5, 2
add $a0, $s5, $0
li $v0, 4
syscall
为什么 system out is (null) in spim ?
li $s5, 2
add $a0, $s5, $0
li $v0, 4
syscall
为什么 system out is (null) in spim ?
看起来您正在尝试打印一个 int,但您提供的系统调用代码代表“打印字符串”。
由于您没有调用标签2
(因此没有从标签地址开始的字符串2
),因此控制台打印出(null)
.
尝试这个
li $a0, 2 #integer to be printed
li $v0, 1 #system call code 1: print_int
syscall
现在它应该打印 2
查看此表以获取系统调用操作码。