.text
main:
la $a0,n1
la $a1,n2
jal swap
li $v0,1 # print n1 and n2; should be 27 and 14
lw $a0,n1
syscall
li $v0,11
li $a0,' '
syscall
li $v0,1
lw $a0,n2
syscall
li $v0,11
li $a0,'\n'
syscall
li $v0,10 # exit
syscall
swap:
xor $a0 $a0 $a1
xor $a1 $a0 $a1
xor $a0 $a0 $a1
jr $ra
L1:
.data
n1: .word 14
n2: .word 27
好的,所以我的目标是添加要交换的目标
但是,无论我对 swap 中的变量做什么,它似乎都没有被保存,我正在编辑 a0 和 a1,这不应该吗?
代码总是打印 14 和 27