Pourquoi ne pas, il existe un subi opcode pour l'architecture MIPS
Je suis très nouveau à langage d'Assemblage. J'ai lu sur MIPS architecture et est venu de savoir que vous avez addi
opcode mais il n'y a pas de subi
opcode. Quelqu'un peut-il svp m'expliquer pourquoi nous n'avons pas un subi
opcode?
Merci d'avance.
Près de doublon qu'est-Ce que la "relation" entre addi et subi?. Certains MIPS assembleurs de mettre en œuvre
subi
comme un pseudo-instructions. (y compris le MARS simulateur mais pas SPIM.)
OriginalL'auteur Fahad Uddin | 2011-08-02
Vous devez vous connecter pour publier un commentaire.
Lorsque vous créez un ensemble d'instructions, vous êtes lié par certaines contraintes, telles que le nombre total d'instructions que vous pouvez créer. Le MIPS créateurs réalisé qu'il n'y a pas besoin de
subi
(parce que vous pouvez ajouter un nombre négatif avecaddi
à l'aide de complément de 2), et ils ont tout simplement pris la décision de renoncer à faire de cette instruction. Il peut avoir été de conserver le nombre d'instructions, ou tout simplement parce qu'il n'est pas nécessaire.c'est probablement le cas. Bonne chance avec MIPS! Patterson et Hennessy est un grand livre pour l'apprentissage de l'architecture d'un ordinateur (la bible), et la simulateur SPIM est un bon outil si vous voulez pratiquer votre MIPS de l'assemblée.
Merci. Mon enseignant m'a recommandé ce livre.
Pourquoi est - 'sous' alors? Ne pouvons-nous pas utiliser "ajouter" pour faire toute la " sub " de l'opération en prenant en complément à 2
vous avez oublié 1 de Patterson et Hennessy de principes de conception: "Prendre le cas le plus courant rapide".
sub
est beaucoup plus commun quesubi
avec immédiates supérieure à 32767, de sorte que vais pourquoi l'instruction a été introduit, sinon on peut avoir un complet jeu d'instructions avec seulement 1 mode et aussi très lent à faire des choses ordinaires. "Une bonne conception exige de bons compromis"OriginalL'auteur Chris Gregg
Les deux
addi
etaddiu
prendre 16 bits signé immédiates comme opérande, de sorte qu'il n'a pas de sens d'ajouter séparéssubi
etsubiu
opcodes.Tout décent MIPS assembler prend en charge subi mnémonique (qui émet addi).
Persson: alors il ne serait pas un opcode, mais une pseudo-instruction 🙂
Juste une question: est immédiate dans le
addi
signe étendu lorsque ajouté à un registre?oui, aussi pour
ADDIU
(ADDIU
ne se distingue de laADDI
en ce qu'elle ne soulève pas de Dépassement des Exceptions)OriginalL'auteur ninjalj