0
我的目標是交換交換值:功能jal mips沒有做任何事情
但是它沒有做任何事情。
我將a0和a1的值設置爲任何值,並且不覆蓋它們的值。 我不允許使用t0,我必須使用堆棧。
仍然,爲什麼它不對a0和a1做任何事情,我必須返回v0中的某些東西嗎?
.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:
addi $sp, $sp, -4
sw $a0, 0($sp)
addi $a0, $a1, 0
lw $a1, 0($sp)
addi $sp, $sp, 4
jr $ra
L1:
.data
n1: .word 14
n2: .word 27