diff options
author | Julian T <julian@jtle.dk> | 2019-10-31 20:44:39 +0100 |
---|---|---|
committer | Julian T <julian@jtle.dk> | 2019-10-31 20:44:39 +0100 |
commit | a9e9b8c82cb67be9f0fa19c698fbf6f030dc88bb (patch) | |
tree | e276c5fd6ed3ce92eb153aad87a92b6a986d8069 /sem1/osc/miniproject/cnasm/test.asm | |
parent | 96b0849a5ff3f510377499a353ae73239416c489 (diff) |
Added assignment for nasm preassembler thing
Diffstat (limited to 'sem1/osc/miniproject/cnasm/test.asm')
-rw-r--r-- | sem1/osc/miniproject/cnasm/test.asm | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/sem1/osc/miniproject/cnasm/test.asm b/sem1/osc/miniproject/cnasm/test.asm new file mode 100644 index 0000000..77a3572 --- /dev/null +++ b/sem1/osc/miniproject/cnasm/test.asm @@ -0,0 +1,39 @@ +global _start + +section .data + align 2 + ; String, which is just a collection of bytes, 0xA is newline + str: db 'Hello, world!',0xA + strLen: equ $-str + +section .bss + +section .text + _start: + + mov edx, strLen ; Arg three: the length of the string + mov ecx, str ; Arg two: the address of the string + mov ebx, 1 ; Arg one: file descriptor, in this case stdout + mov eax, 4 ; Syscall number, in this case the + int 0x80 ; Interrupt 0x80 + + if ( hej = 10 ) { + mov ebx, 0 ; Arg one: the status + mov eax, 1 ; Syscall number: + if(cool) { + int 0x80 + } + } else { + while( lol ) { + mov hej, 0 + } + } + while( lol ) { + mov hej, 0 + } + + hej + + for(mov a, 0( a < 100( a++ ) { + test + } |