xor命令导致“内存地址超出范围”Mips中出错

时间:2014-02-17 23:23:37

标签: assembly mips

我必须打印两个数字的xor。但是,当我尝试实现这一点时,我会得到一个“超出界限的内存地址”。出了什么问题?

以下是代码:

.data
first: .asciiz "0 xor 0 is "
zero: .word 0
one: .word 1

.text
main:

li $v0, 4
la $a0, first
syscall #print first

li $v0, 4
la $a1, zero
la $a2, zero
xor $a0, $a1, $a2
syscall #print 0 xor 0

li $v0, 10
syscall #exit

当它在命令提示符下打印出来时,我得到了这个:

0 xor 0 is Memory Address out of Bounds

为什么我会收到错误?

1 个答案:

答案 0 :(得分:2)

我已经弄清楚了,我正在使用

la $v0, 4

而不是我应该使用什么来打印整数:

la $v0, 1