Clean up Assembly files (#1003)

This commit is contained in:
MrBrain295
2021-05-08 09:57:36 -05:00
committed by GitHub
parent 45856bf57b
commit 7f7369291b
20 changed files with 174 additions and 196 deletions

View File

@@ -1,31 +1,26 @@
section .text
global _start ;must be declared for linker (ld)
global _start
_syscall:
int 0x80 ;system call
int 0x80
ret
_start: ;tell linker entry point
_start:
push dword len ;message length
push dword msg ;message to write
push dword 1 ;file descriptor (stdout)
mov eax,0x4 ;system call number (sys_write)
call _syscall ;call kernel
push dword len
push dword msg
push dword 1
mov eax,0x4
call _syscall
;the alternate way to call kernel:
;push eax
;call 7:0
add esp,12 ;clean stack (3 arguments * 4)
add esp,12
push dword 0 ;exit code
mov eax,0x1 ;system call number (sys_exit)
call _syscall ;call kernel
push dword 0
mov eax,0x1
call _syscall
;we do not return from sys_exit,
;there's no need to clean stack
section .data
msg db "Hello World",0xa ;our string
len equ $ - msg ;length of our string
msg db "Hello World",0xa
len equ $ - msg