## Octal "assembler", based on osm.c and osma.s, cleaned up. .globl main main: xor %esi, %esi xor %ebx, %ebx next: call getchar cmp $-1, %eax je end sub $'0, %eax cmp $7, %eax ja emit shl $3, %ebx inc %esi or %eax, %ebx jmp next emit: test %esi, %esi je next push %ebx call putchar pop %ebx jmp main end: xor %eax, %eax ret