section .data
    num1 dq 50
    num2 dq 10
    num3 dq 5
    buffer resb 20 
    newline db 10

section .text
    global _start
	
_start:
    mov rax, [num1]
    sub rax, [num2]
    sub rax, [num3]

    mov rdi, buffer
    add rdi, 19
    mov rcx, 10

convert_loop:
    xor rdx, rdx
    div rcx
    add dl, '0'
    dec rdi
    mov [rdi], dl
    test rax, rax
    jnz convert_loop

    mov rdx, buffer
    add rdx, 19
    sub rdx, rdi

    mov rax, 1
    mov rsi, rdi
    mov rdi, 1
    syscall

    mov rax, 1
    mov rdi, 1
    mov rsi, newline
    mov rdx, 1
    syscall

    mov rax, 60
    xor rdi, rdi
    syscall
