.data .text __start: jal main li $v0, 10 syscall main : subi $sp, $sp, 4 sw $fp, 0($sp) move $fp, $sp subi $sp, $sp, 4 sw $ra, 0($sp) li $t0, 1 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e0 j e2 e0 : li $v0 5 syscall move $t0, $v0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 or $t0, $zero, $t2 j e3 e2 : move $t0 $t1 e3 : subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 beq $t0 $zero e4 li $t0, 5 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 move $a0, $t0 li $v0, 1 syscall li $a0, '\n' li $v0, 11 syscall j e5 e4: e5: addi $sp, $sp 0 # desallocation variables locales lw $ra, 0($sp) addi $sp, $sp, 4 lw $fp, 0($sp) addi $sp, $sp, 4 addi $sp, $sp, 4 #ignore valeur de retour jr $ra