Bonjour,
Pouvez-vous m'aider à résoudre le problème suivant: Comment écrire le factoriel d'un nombre en langage assembleur pour le processeur MIPS R3000?
Merci!!:oops:
Version imprimable
Bonjour,
Pouvez-vous m'aider à résoudre le problème suivant: Comment écrire le factoriel d'un nombre en langage assembleur pour le processeur MIPS R3000?
Merci!!:oops:
Ce n'est pas difficile.
Il te faut d'un côté un registre qui te serve d'accumulateur, c'est-à-dire qui reçoive le cumul de tes sous-totaux. Autrement dit, il va te servir d'opérande et de récepteur du résultat, car ce résultat va être utilisé pour la multiplication suivante.
De l'autre côté, tu initialises le second opérande à la valeur du nombre en question, et à chaque fois que tu as fait une multiplication, tu le décrémentes, et tu boucles tant que tu n'es pas arrivé à zéro.
Il te faudra donc utiliser $a0 et $a1 comme opérande, et voir du côté de MFLO pour récupérer le résultat dans $a0.