diff options
Diffstat (limited to 'input')
-rw-r--r-- | input/add-loop-directive.asm | 21 | ||||
-rw-r--r-- | input/add-loop.asm | 13 |
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 |