GitHub_collection_hello-world/a/Assembler NASM Linux.asm
Richie Bendall dad1ce8fa0
Meta tweaks
Signed-off-by: Richie Bendall <richiebendall@gmail.com>
2021-02-17 17:39:48 +13:00

21 lines
503 B
NASM

section .text
global _start ;must be declared for linker (ld)
_start: ;tell linker entry point
xor ebx,ebx ;ebx=0
mov ecx,msg ;address of message to write
lea edx,[ebx+len] ;message length
lea eax,[ebx+4] ;system call number (sys_write)
inc ebx ;file descriptor (stdout)
int 0x80 ;call kernel
xor eax, eax ;set eax=0
inc eax ;system call number (sys_exit)
int 0x80 ;call kernel
section .rodata
msg db 'Hello, world!',0xa ;our string
len equ $ - msg ;length of our string