;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ASM ; Compilation : ; nasm -f elf64 main.s -o main.o ; ld main.o -o main ; ./main ; ; Syscall : ; %rax ; Args : ; %rdi %rsi %rdx %r10 %r8 %r9 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %define SYSCALL_WRITE 1 %define STDOUT 1 %define SYSCALL_EXIT 60 section .data d_msg: .msg db "(NULL)", 0x0a, 0 .len equ $ - d_msg.msg lol db "lol", 0x0a, 0 len equ $ - lol section .text global _start _start: call main mov rdi, 0 mov rax, SYSCALL_EXIT syscall ret main: push rsp mov rbp, rsp mov rdi, STDOUT lea rsi, [rel d_msg.msg] mov rdx, d_msg.len mov rax, SYSCALL_WRITE syscall mov rdi, STDOUT mov rsi, lol mov rdx, 5 mov rax, SYSCALL_WRITE syscall leave ret