0
我想只使用一個數組來反轉數組。當高指數小於或等於低時,我應該繼續切換高低的內容。但是,我得到的地址超出範圍,並且無法找到如何修復它的資源。我應該在倒序數組時使用一個數組。我究竟做錯了什麼?加星標是我得到錯誤的地方。在MIPS彙編中獲取地址超出範圍?
reverseArray:
li $t6, 0 #head = first index of array
la $s0, array
li $t5, 4
mult $s0, $t5
mflo $t7 #tail = last index of array
swap:
lw $t6, 0($s0)
**lw $t4, 0($t7)**
sw $t4, 0($s0)
sw $t6, 0($t7)
add $t7, $t7, -4
add $s0, $s0, 4
sle $t1,$t7,$s0
beq $t1,$0,swap
您正在使用索引作爲指針。你需要添加基地址。 – Jester
我該怎麼做?什麼是基地址?對不起,我剛剛開始。 @Jester –
'$ s0'是基地址,你似乎把它乘以4.這是錯誤的。您希望按元素大小乘以元素數並添加基地址。 – Jester