Gibt es trotzdem eine Variable als Offset-Nummer für ein Array? Zum Beispiel weiß, dass ich die normalen Offset und Array funktioniert wie folgt:MIPS Assembly, das auf ein Array zugreift, während eine Variable als Offset verwendet wird
ARRAY: .word 0,1,2,3,4,5,6,7,8,9
lw $t6, ARRAY
lw $t7, 0($t6)
Wo der Index bei Null wäre in t7 geladen werden, aber was soll ich tun, um, ist dies:
ARRAY: .word 0,1,2,3,4,5,6,7,8,9
lw $t6, ARRAY
li $t7, 0
lw $t8, $t7($t6)
Auf diese Weise Ich könnte die Variable t7 so erhöhen, wie ich es im Code tun wollte, ohne den Offset fest codieren zu müssen. Ich bekomme immer einen Syntaxfehler, also denke ich, was ich versuche, ist falsch. Gibt es denn irgendwie so etwas, damit ich den Index des Arrays inkrementieren kann?
Dies wird nicht unterstützt. Aber da MIPS viele allgemeine Register hat, können Sie einfach $ t6 und $ t7 in ein freies Register summieren und das weiter erhöhen. Und Sie müssen nicht raten, ob etwas, das Sie tun, unterstützt wird; _MIPS32 ™ Architektur für Programmierer Band II: Der MIPS32 ™ Befehlssatz_ listet alle verfügbaren Befehle und ihre erwarteten Operanden auf. – Michael