summaryrefslogtreecommitdiff
path: root/data/examples/test1.asm
diff options
context:
space:
mode:
authorLizzy Hunt <elizabeth.hunt@simponic.xyz>2023-04-10 09:17:11 -0600
committerLizzy Hunt <elizabeth.hunt@simponic.xyz>2023-04-10 09:17:11 -0600
commit5f28f80c4e25a56cd444914c2f0b3da5e7fdb088 (patch)
tree600ad8b1ec5aad5155baf8c0352281054a8e6366 /data/examples/test1.asm
downloadcminus-5f28f80c4e25a56cd444914c2f0b3da5e7fdb088.tar.gz
cminus-5f28f80c4e25a56cd444914c2f0b3da5e7fdb088.zip
Initial commit - building
Diffstat (limited to 'data/examples/test1.asm')
-rw-r--r--data/examples/test1.asm35
1 files changed, 35 insertions, 0 deletions
diff --git a/data/examples/test1.asm b/data/examples/test1.asm
new file mode 100644
index 0000000..b849530
--- /dev/null
+++ b/data/examples/test1.asm
@@ -0,0 +1,35 @@
+# All program code is placed after the
+# .text assembler directive
+.text
+
+# Declare main as a global function
+.globl main
+
+j main
+
+# code for main
+main:
+# Entering a new scope.
+# Symbols in symbol table:
+# println
+# return
+# Update the stack pointer.
+addi $sp $sp -0
+# println
+la $a0 datalabel0
+li $v0 4
+syscall
+la $a0 newline
+li $v0 4
+syscall
+# Exiting scope.
+addi $sp $sp 0
+li $v0 10
+syscall
+
+# All memory structures are placed after the
+# .data assembler directive
+.data
+
+newline: .asciiz "\n"
+datalabel0: .asciiz "Hello world"