summaryrefslogtreecommitdiff
path: root/assembly/fizzbuzz/fizzbuzz.S
blob: 99607763a804865434a728223d97cff5525a3687 (plain)
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
li s0,0
li s1,15
li s2,5
li s3,3
li s4,100
mainloop:
li a0,'\n'
li a7,11
ecall
bge s0,s4,end
addi s0,s0,1
remu t0,s0,s1
bnez t0,1f
la a0,fizz
li a7,4
ecall
la a0,buzz
li a7,4
ecall
j mainloop
1: remu t0,s0,s2
bnez t0,1f
la a0,buzz
li a7,4
ecall
j mainloop
1: remu t0,s0,s3
bnez t0,1f
la a0,fizz
li a7,4
ecall
j mainloop
1: mv a0,s0
li a7,1
ecall
j mainloop

end:
li a7,10
ecall

fizz: .asciz "Fizz"
buzz: .asciz "Buzz"