Instruktionsreferenz


Unterpunkte dieser Seite

Befehle
System Calls

Befehle

Befehl Argumente Wirkung Erläuterung
jal label unbedingter Sprung nach Label, Rücksprungadresse wird automatisch in $ra abgelegt. Die Rücksprungadresse ist hierbei die Adresse des Befehls, der auf die jal Anweisung folgt (nicht im Unterprogramm sondern im Hauptprogramm). jump and link
jr register unbedingter Sprung an die Adresse die im Register steht, welches als Argument für jr angegeben wurde. jump register
add AR1, AR2, AR3 Addiert AR2 und AR3. Das Ergebnis wird in AR1 abgelegt Addition
addi AR1, AR2, Direktwert Addiert den Inhalte des Argumentes AR2 mit dem Direktwert und schreibt das Ergebnis in das erste Argument AR1 Add Immediate (signed). Addition eine Integerganzzahldirektwertes mit Vorzeichen.
lui AR1, 16Bit Direktwert Lädt den 16Bit Direktwert in die obere Hälfte der AR1 Registerarguments load unsigned int
sll AR1, AR2, Direktwert Die Binaerzahl in AR2 wird um Direktwert viele Bitstellen nach links verschoben und das Ergebnis wird in AR1 abgelegt. Beim Schieben gehen die Bits die links herausfliegen verloren und von rechts werden Nullen nachgeschoben. shift left logical
sra AR1, AR2, Direktwert Die Binaerzahl AR2 wird um die Anzahl des dritten Parameters nach rechts geschoben und das Ergebnis wird im ersten Argument abgelegt. Die Bits die rechts herausfliegen gehen verloren und von links wird Vorzeichenrichtig nachgeschoben shift right arithmetically (Im Gegensatz zu srl = shift right logically)
srl Die Binaerzahl AR2 wird um die Anzahl des dritten Parameters nach rechts geschoben und das Ergebnis wird im ersten Argument abgelegt. Die Bits die rechts herausfliegen gehen verloren und von links werden Nullen nachgeschoben. shift rigth logically (Im Gegensatz zu sra = shift right arithmetically)
mul AR1, AR2, AR3 Multipliziert Inhalt von AR2 mit AR3 uns speichert Ergebnis in AR1. Multiply (signed)
mult AR1, AR2 Multipliziert AR1 mit AR2 und speichert das Ergebnisse in dem Spezialregister LO multiply (unsigned)
multu AR1, AR2 Multipliziert AR1 mit AR2 und speichert das Ergebnis in LO multiply unsigned integer
mtlo move to LO
mthi move to HI
mflo move from lo
mfhi move from hi

System Calls

Service System Call Code Arguments result
read_int 5 - integer in $v0



zum Seitenanfang
zur SPIM Seite
zur Hauptseite

Letzte Änderung: 20.12.2005