-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtext.asm
113 lines (113 loc) · 1.61 KB
/
text.asm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
main:
add $sp, $sp, -400
li $t1, 0
sw $t1,396 ($sp)
li $t1, 0
sw $t1,392 ($sp)
li $v0, 5
syscall
sw $v0,396 ($sp)
li $t1, 1
sw $t1,388 ($sp)
whilestatement4:
lw $t1,396 ($sp)
li $t2, 0
li $t3, 0
ble $t1, $t2 ,yareyare1
li $t3, 1
yareyare1:
sw $t3,384 ($sp)
lw $t1,384 ($sp)
move $t4, $t1
li $t1, 1
bne $t4, 0, yareyare2
li $t1, 0
yareyare2:
bne $t1, 1, endwhile4
lw $t1,388 ($sp)
lw $t2,396 ($sp)
mult $t1, $t2
mflo $t3
sw $t3,380 ($sp)
lw $t1,380 ($sp)
move $t2, $t1
sw $t2,388 ($sp)
lw $t1,396 ($sp)
li $t2, 1
sub $t3, $t1, $t2
sw $t3,376 ($sp)
lw $t1,376 ($sp)
move $t2, $t1
sw $t2,396 ($sp)
b whilestatement4
endwhile4:
li $v0, 1
lw $a0,388 ($sp)
syscall
lw $t1,388 ($sp)
li $t2, 120
li $t3, 0
bne $t1, $t2 ,yareyare3
li $t3, 1
yareyare3:
sw $t3,372 ($sp)
lw $t1,372 ($sp)
move $t4, $t1
li $t1, 1
bne $t4, 0, yareyare4
li $t1, 0
yareyare4:
beq $t1, 1, ifstatement11
lw $t1,388 ($sp)
li $t2, 2
li $t3, 0
bne $t1, $t2 ,yareyare5
li $t3, 1
yareyare5:
sw $t3,368 ($sp)
lw $t1,368 ($sp)
move $t4, $t1
li $t1, 1
bne $t4, 0, yareyare6
li $t1, 0
yareyare6:
beq $t1, 1, ifstatement13
li $t1, 1
move $t4, $t1
li $t1, 1
bne $t4, 0, yareyare7
li $t1, 0
yareyare7:
beq $t1, 1, ifstatement14
b ifstatement15
ifstatement11:
lw $t1,388 ($sp)
li $t2, 5
add $t3, $t1, $t2
sw $t3,364 ($sp)
lw $t1,364 ($sp)
move $t2, $t1
sw $t2,388 ($sp)
li $v0, 1
lw $a0,388 ($sp)
syscall
b ifstatement15
ifstatement13:
li $t1, 5
sw $t1,388 ($sp)
b ifstatement15
ifstatement14:
li $t1, 0
lw $t2,388 ($sp)
sub $t3, $t1, $t2
sw $t3,360 ($sp)
lw $t1,360 ($sp)
move $t2, $t1
sw $t2,388 ($sp)
b ifstatement15
ifstatement15:
li $v0, 1
lw $a0,388 ($sp)
syscall
li $v0, 10
syscall