1
li $s5, 2
add $a0, $s5, $0
li $v0, 4
syscall

为什么 system out is (null) in spim ?

4

1 回答 1

3

看起来您正在尝试打印一个 int,但您提供的系统调用代码代表“打印字符串”。

由于您没有调用标签2(因此没有从标签地址开始的字符串2),因此控制台打印出(null).

尝试这个

li $a0, 2 #integer to be printed
li $v0, 1 #system call code 1: print_int
syscall

现在它应该打印 2

查看此以获取系统调用操作码。

于 2011-01-05T18:28:12.917 回答