0
所以我想把它轉換爲mips。交換沒有臨時寄存器的數組值mips
void swap (int *px, int *py) {
int temp;
temp = *px;
*px = *py;
*py = temp;
}
我想這可能是這樣的
sll $t1, $a1, 2
add $t1, $a0, $t1
lw $t0, 0($t1)
lw $t2, 4($t1)
sw $t2, 0($t1)
sw $t0, 4($t1)
jr $ra
,但我不允許使用臨時寄存器。
我想我必須使用一些lw/sw命令,但我不知道如何做到這一點。
技術上你已經使用3個臨時寄存器($ t0,$ t1,$ t2)。您需要更具體地瞭解您可以使用甚至不能使用的內容。 – Michael 2013-03-18 08:52:14