section .data
nl db 10
section .bss
buf resb 4 ; буфер для 4 цифр
section .text
global _start
_start:
mov eax, 1234 ; число для вывода
mov ebx, 10
mov ecx, buf+3 ; указатель на конец буфера
next:
xor edx, edx
add dl, '0'
mov [ecx], dl
dec ecx
cmp eax, 0
jne next
inc ecx ; ecx указывает на первую цифру
; вычисляем длину строки
mov edx, buf+4 ; адрес конца буфера
sub edx, ecx ; длина = конец - начало
mov eax, 4
mov ebx, 1
int 0x80
mov eax, 4
mov ebx, 1
mov ecx, nl
mov edx, 1
int 0x80
mov eax, 1
xor ebx, ebx
int 0x80
c2VjdGlvbiAuZGF0YQogICAgbmwgZGIgMTAKCnNlY3Rpb24gLmJzcwogICAgYnVmIHJlc2IgNCAgICAgICAgICA7INCx0YPRhNC10YAg0LTQu9GPIDQg0YbQuNGE0YAKCnNlY3Rpb24gLnRleHQKICAgIGdsb2JhbCBfc3RhcnQKCl9zdGFydDoKICAgIG1vdiBlYXgsIDEyMzQgICAgICAgIDsg0YfQuNGB0LvQviDQtNC70Y8g0LLRi9Cy0L7QtNCwCiAgICBtb3YgZWJ4LCAxMAogICAgbW92IGVjeCwgYnVmKzMgICAgICAgOyDRg9C60LDQt9Cw0YLQtdC70Ywg0L3QsCDQutC+0L3QtdGGINCx0YPRhNC10YDQsAoKbmV4dDoKICAgIHhvciBlZHgsIGVkeAogICAgZGl2IGVieAogICAgYWRkIGRsLCAnMCcKICAgIG1vdiBbZWN4XSwgZGwKICAgIGRlYyBlY3gKICAgIGNtcCBlYXgsIDAKICAgIGpuZSBuZXh0CgogICAgaW5jIGVjeCAgICAgICAgICAgICAgOyBlY3gg0YPQutCw0LfRi9Cy0LDQtdGCINC90LAg0L/QtdGA0LLRg9GOINGG0LjRhNGA0YMKICAgIAogICAgOyDQstGL0YfQuNGB0LvRj9C10Lwg0LTQu9C40L3RgyDRgdGC0YDQvtC60LgKICAgIG1vdiBlZHgsIGJ1Zis0ICAgICAgIDsg0LDQtNGA0LXRgSDQutC+0L3RhtCwINCx0YPRhNC10YDQsAogICAgc3ViIGVkeCwgZWN4ICAgICAgICAgOyDQtNC70LjQvdCwID0g0LrQvtC90LXRhiAtINC90LDRh9Cw0LvQvgoKICAgIG1vdiBlYXgsIDQKICAgIG1vdiBlYngsIDEKICAgIGludCAweDgwCgogICAgbW92IGVheCwgNAogICAgbW92IGVieCwgMQogICAgbW92IGVjeCwgbmwKICAgIG1vdiBlZHgsIDEKICAgIGludCAweDgwCgogICAgbW92IGVheCwgMQogICAgeG9yIGVieCwgZWJ4CiAgICBpbnQgMHg4MA==