.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, 3 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e0 j e2 e0 : li $t0, 4 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 move $a0, $t0 li $v0, 1 syscall li $a0, '\n' li $v0, 11 syscall li $t0, 3 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e5 subi $sp, $sp, 4 sw $t1, 0($sp) li $t0, 6 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t2, e5 and $t0, $t1, $t2 j e4 e5 : li $t0 0 e4 : 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 li $t0, 3 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e6 j e8 e6 : 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 e9 e8 : move $t0 $t1 e9 : 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 li $t0, 3 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e11 subi $sp, $sp, 4 sw $t1, 0($sp) li $v0 5 syscall move $t0, $v0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t2, e11 and $t0, $t1, $t2 j e10 e11 : li $t0 0 e10 : 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 li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e12 j e14 e12 : 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 e15 e14 : move $t0 $t1 e15 : 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 li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e17 subi $sp, $sp, 4 sw $t1, 0($sp) li $v0 5 syscall move $t0, $v0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t2, e17 and $t0, $t1, $t2 j e16 e17 : li $t0 0 e16 : 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 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