summaryrefslogtreecommitdiffstats
path: root/Aufgabe6/sum.asm
diff options
context:
space:
mode:
Diffstat (limited to 'Aufgabe6/sum.asm')
-rw-r--r--Aufgabe6/sum.asm18
1 files changed, 18 insertions, 0 deletions
diff --git a/Aufgabe6/sum.asm b/Aufgabe6/sum.asm
new file mode 100644
index 0000000..aa029f4
--- /dev/null
+++ b/Aufgabe6/sum.asm
@@ -0,0 +1,18 @@
+#
+# print sum of input numbers
+#
+ ld zero # initialize sum to zero
+ st sum
+loop get # read a number
+ jz done # no more input if number is zero
+ add sum # add in accumulated sum
+ st sum # store new value back in sum
+ j loop # go back and read another number
+
+done ld sum
+ put # print sum
+ halt # stop program execution
+
+zero const 0 # constant
+sum const # variable
+