aboutsummaryrefslogtreecommitdiff
path: root/sort.asm
diff options
context:
space:
mode:
Diffstat (limited to 'sort.asm')
-rw-r--r--sort.asm29
1 files changed, 29 insertions, 0 deletions
diff --git a/sort.asm b/sort.asm
new file mode 100644
index 0000000..b576889
--- /dev/null
+++ b/sort.asm
@@ -0,0 +1,29 @@
+; Copyright (c) 2023 Marvin Borner
+
+global main
+extern printf
+
+bits 64
+
+main:
+ push rbp
+ mov ecx, size
+
+print:
+ mov rdi, format
+ mov rsi, [array + (ecx - 1) * 4]
+ xor rax, rax
+ push rcx
+ call printf WRT ..plt
+ pop rcx
+ dec ecx
+ jnz print
+
+end:
+ pop rbp
+ mov rax, 0
+ ret
+
+array: dd 1, 5, 3, 7, 2, 6
+size: equ ($-array)/4
+format: db "%d", 10, 0