Je suis actuellement à la recherche de la meilleure méthode pour exécuter une fonction n power2. En bref, le code dans MIPS devrait calculer 2n. n étant un nombre positif stocké dans $a0
. Cependant, en ce moment mes résultats arrivent une puissance de moins.MIPS Assembly Language (Power2)
Ma tentative
main:
# initialize
la $a0,3 #n counter
li $s0,2 #base number
li $s1,0 #calculated value
While:
beq $a0,$zero,exit #Checks if n is zero, if yes exit program
sllv $s1,$s0,$a0 #Shift left logical by n, this should do the math 2^n
exit:
Correction des problèmes et du code de sortie j. Il fonctionne maintenant dans QtSpim mais malheureusement les résultats ne sont pas poussés à $ s0 comme vu dans l'image du résultat ci-dessus. –
Assurez-vous d'examiner les registres au bon endroit. Avec le 'beq' en place, ce code ne fait rien sauf charger' $ s0' avec '1' et cela devrait fonctionner quoi qu'il arrive. – Jester
Je ne suis pas sûr de ce que vous voulez dire "le bon point". Ce qui me manque pour mon QtSpim ne produit aucun résultat. –