Unterschied zwischen "addi" und "add" für pseudoinstruction "verschieben" in MIPS?
Für diese pseudoinstruction:
move $rt, $rs
Sind sowohl die addi und add assembly code akzeptabel? So könnte ich entweder
add $rt, $rs, $0
oder
addi $rt, $rs, $0
?
Bearbeiten:
Ich denke, dass ich einen Fehler gemacht mit addi
add $rt, $rs, $0
wäre das gleiche wie
addi $rt, $rs, 0
seit add
fügt registriert, und ich brauche eine Konstante für die sofortige für addi
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
addi
Unterricht erfordert eine unmittelbaren Operanden eher als ein register, so dass die$0
wäre eigentlich0
:Beide Arbeit und haben alle benötigten Informationen codiert in der Anweisung selbst):
Allerdings wäre es mehr üblichen einfach die null-gesperrt
$0
registrieren-in diesem Fall-denn das ist schließlich Ihr Zweck.Ich würde auch eher zu nutzen die unsignierte Variante jedoch, da ich glaube mich zu erinnern möglicherweise gibt es zusätzliche überlauf-Prüfung für signierte Anweisungen: