; This is the manually-written ASM file that demonstrates what newline.bf should translate into. section .data memory times 30000 db 0 section .text global _start _start: mov rsi,memory ; this is our data pointer inc byte [rsi] ; increment the value found at the memory address pointed to by our pointer ; The "byte" is necessary, as we don't have a type system in assembly ; so the assembler doesn't know what's supposed to be at some memory address, that's our job ; This is why smart people invented higher-level programming languages. inc byte [rsi] ; All these are our "+" commands. inc byte [rsi] inc byte [rsi] inc byte [rsi] inc byte [rsi] inc byte [rsi] inc byte [rsi] inc byte [rsi] inc byte [rsi] mov rdx,1 mov rdi,1 mov rax,1 syscall ; that was our "." mov rdi,0 mov rax,60 syscall ;exit