.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) subi $sp, $sp, 4 subi $sp, $sp, 4 subi $sp, $sp, 4 subi $sp, $sp, 4 li $v0 5 syscall move $t0, $v0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 sw $t0, -8($fp) #variable locale lw $t0, -8($fp) #variable locale subi $sp, $sp, 4 sw $t0, 0($sp) li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 li $t0, 1 blt $t1, $t2 e6 li $t0, 0 e6: subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $zero, $t1, e2 j e4 e2 : lw $t0, -8($fp) #variable locale subi $sp, $sp, 4 sw $t0, 0($sp) li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 li $t0, 1 beq $t1, $t2 e7 li $t0, 0 e7: subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 or $t0, $zero, $t2 j e5 e4 : move $t0 $t1 e5 : subi $sp, $sp, 4 sw $t0, 0($sp) lw $t1, 0($sp) addi $sp, $sp, 4 beq $t1, $zero e0 li $t0, 1 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 j e1 e0 : li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 e1 : subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 sw $t0, -12($fp) #variable locale lw $t0, -8($fp) #variable locale subi $sp, $sp, 4 sw $t0, 0($sp) li $t0, 100 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 li $t0, 1 blt $t1, $t2 e12 li $t0, 0 e12: 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 $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, -8($fp) #variable locale subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 lw $t1, 0($sp) addi $sp, $sp, 4 li $t0, 1 blt $t1, $t2 e13 li $t0, 0 e13: 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 $t1, 0($sp) addi $sp, $sp, 4 beq $t1, $zero e8 li $t0, 1 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 j e9 e8 : li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 e9 : subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 sw $t0, -16($fp) #variable locale lw $t0, -12($fp) #variable locale subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 not $t0 $t2 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) lw $t0, -16($fp) #variable locale subi $sp, $sp, 4 sw $t0, 0($sp) lw $t2, 0($sp) addi $sp, $sp, 4 not $t0 $t2 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 $t1, 0($sp) addi $sp, $sp, 4 beq $t1, $zero e14 li $t0, 1 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 j e15 e14 : li $t0, 0 subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 e15 : subi $sp, $sp, 4 sw $t0, 0($sp) lw $t0, 0($sp) addi $sp, $sp, 4 sw $t0, -20($fp) #variable locale lw $t0, -12($fp) #variable locale 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 lw $t0, -16($fp) #variable locale 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 lw $t0, -20($fp) #variable locale 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 16 # 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