summaryrefslogtreecommitdiff
path: root/input
diff options
context:
space:
mode:
Diffstat (limited to 'input')
-rw-r--r--input/add-loop-directive.asm21
-rw-r--r--input/add-loop.asm13
2 files changed, 28 insertions, 6 deletions
diff --git a/input/add-loop-directive.asm b/input/add-loop-directive.asm
new file mode 100644
index 0000000..5bccff3
--- /dev/null
+++ b/input/add-loop-directive.asm
@@ -0,0 +1,21 @@
+.data
+ arr 1 2 3 4
+ s 3
+ i 0
+
+.text
+ load $5 s
+ load $10 arr
+ load $6 i
+ jrl CMP
+L:
+ add $9 $10 $6
+ load $7 0($9)
+ load $8 1($9)
+ add $7 $7 $8
+
+ store $7 0($9)
+ addi $6 $6 0x1
+CMP:
+ cmp $6 $5
+ bgt L
diff --git a/input/add-loop.asm b/input/add-loop.asm
index 6379831..f8d97a1 100644
--- a/input/add-loop.asm
+++ b/input/add-loop.asm
@@ -1,17 +1,18 @@
- addi $fp $0 0x200
+.text
+ addi $2 $0 0x200
addi $5 $0 0x1
- store $5 0($fp)
+ store $5 0($2)
addi $5 $0 0x2
- store $5 1($fp)
+ store $5 1($2)
addi $5 $0 0x3
- store $5 2($fp)
+ store $5 2($2)
addi $5 $0 0x4
- store $5 3($fp)
+ store $5 3($2)
addi $5 $0 0x0
addi $6 $0 0x3
jrl CHECK
LOOP:
- add $9 $fp $5
+ add $9 $2 $5
load $7 -0($9)
load $8 +1($9)
add $7 $7 $8