Necesito traducir este código C al ensamblado MIPS. Este es el código C:Conjunto MIPS para un bucle for simple
int tmp = 0;
for (int j = 0; j < 15; ++j)
tmp = tmp * 2 + 3
Este es mi código ensamblador MIPS. ¿Es una traducción correcta? Si ve algún error, me gustaría saberlo.
# tmp = $v0
# j = $t0
.globl main
main:
li $v0,0
loop:
bgt $t0,15,exit
addi $t0,$t0,1
mul $t1,$v0,2
add $v0,$t1, 3
j loop
exit:
Para multiplicar por potencias de 2 use sll. ** No ** usa mul –