.386 extrn __write : near extrn _ExitProcess@ : near public _main _DATA SEGMENT dword public 'DATA' use32 napis db " Ma r t " napis_k db ? nowy db 40 dup (?) _DATA ENDS _TEXT SEGMENT dword public 'CODE' use32 ASSUME cs:_TEXT,ds:_DATA _main: mov ecx, napis_k - napis mov eax, 0 mov ebp, 0 mov edx, 0 mov edi, ecx petla: mov dl, napis[eax] mov nowy[ebp], dl cmp dl, 32 jz spacje mov bl, 0 jmp zakonczenie spacje: mov bl, 1 szukaj: mov dh, napis[eax] cmp dh, 32 jz dalej jmp zakonczenie dalej: cmp eax, edi jz nastepny inc eax jmp szukaj zakonczenie: inc ebp cmp bl, 0 jnz jmp nastepny inc eax nastepny: loop petla push ebp push OFFSET nowy push 1 call __write add esp, 12 push 0 call _ExitProcess@ _TEXT ENDS END