Add TD5 exercice 1
[TD_IML.git] / TD5 / mips1.asm
CommitLineData
c4564fcf
JB
1.text
2main:
3 li $a0, 5
4 li $a1, 10
5 addi $sp, $sp, -12
6
7 sw $a0, 4($sp)
8 sw $a1, 0($sp)
9 jal opMult
10
11 lw $v0, 0($sp)
12 addi $sp, $sp, 4
13
14 move $a0, $v0
15 li $v0, 1
16 syscall
17 li $v0, 10
18 syscall
19
20opMult:
21 addi $sp, $sp, -40
22 sw $fp, 36($sp)
23 sw $ra, 32($sp)
24 sw $s0, 28($sp)
25 sw $s1, 24($sp)
26 sw $s2, 20($sp)
27 sw $s3, 16($sp)
28 sw $s4, 12($sp)
29 sw $s5, 8($sp)
30 sw $s6, 4($sp)
31 sw $s7, 0($sp)
32 addi $fp, $sp, 36
33
34 lw $t1, 8($fp)
35 lw $t2, 4($fp)
36 mul $t1, $t1, $t2
37 sw $t1, 12($fp)
38
39 lw $s7, 0($sp)
40 lw $s6, 4($sp)
41 lw $s5, 8($sp)
42 lw $s4, 12($sp)
43 lw $s3, 16($sp)
44 lw $s2, 20($sp)
45 lw $s1, 24($sp)
46 lw $s0, 28($sp)
47 lw $ra, 32($sp)
48 lw $fp, 36($sp)
49 addi $sp, $sp, 48
50 jr $ra
51