0
Im Unterricht lernten wir, wie man C-Code in MIPS-Anweisungen umwandelt, aber ich stieß auf ein kleines Problem. Ich wollte nur eine Klarstellung, was genau die letzte Zeile der MIPS-Instruktionen eigentlich sagt.Umwandlung von C zu MIPS
c:
do{
i=i-2;
}while(i>1);
MIPSS:
DO: addi s1,s1,-2 // i=i-2
addi t0,t0, 1 // 1
slt t1,t0,s1 // 1<i
bne t1,$zero,DO // ???
*** B *** ranch *** N *** ot *** E *** qual. Es ist deine Schleife. Es springt (verzweigt sich) zurück zur DO-Markierung, wenn die Schleife nicht abgeschlossen ist. –
Der Assembly-Code entspricht nicht dem C-Code. Insbesondere wird "$ t0" inkrementiert und nicht auf Eins in der Schleife gesetzt. – EOF
@EOF Ich nehme an, es sei angenommen, addi t0, $ zero, 1 –