format ELF
public _start
extrn print.int
extrn print.bin
extrn print.str
extrn print.nl
extrn string.parse_int
extrn exit
macro nl {
call print.nl
}
section '.strtab'
str1 db "Hello world!", 10, 0
str2 db "Enter the number: ", 0
str3 db " + 10 = ", 0
section '.bss' writeable
buffer rb 11
section '.text' executable
_start:
push dword 123
call print.int
nl
call print.bin
push str1
call print.str
push str2
mov eax, 3
mov ebx, 0
mov ecx, buffer
mov edx, 11
int 80h
mov [buffer+eax-1], 0
push buffer
push str3
call string.parse_int
pop eax
add eax, 10
push eax
call exit