Online Compiler Nasm

extern io_get_dec, io_print_dec, io_newline, io_print_char section .text global main main: call io_get_dec mov ebx, eax mov edi, 0 .Lz: cmp ebx, 0 je .Lx mov eax, ebx div dword 3 mov ebx, eax cmp edx, 1 jne .Ly add edi, 1 .Ly: jmp .Lz .Lx: mov eax, edi call io_print_dec xor eax, eax
1) Этот код считывает целое число, затем подсчитывает, сколько раз при последовательном делении на 3 остаток равен 1, и выводит это количество.

2) Обрати внимание, что инструкция `div dword 3` неверна — делитель должен находиться в регистре или памяти. Также в коде отсутствует выход из цикла, что приведёт к бесконечному выполнению.