Asembler pętla for

0

Witam mam sobie taki prosty programik w asemblerze, który ma wyświetlić tekst żądaną ilość razy. Wszytko działa pięknie dopóki ustawię w kodzie ile razy ma się ta pętla wykonać, lecz gdy ma to zostać wprowadzone z klawiatury zaczyna się robić problem, pętla działa w nieskończoność. Czy mógłby mi ktoś pomóc rozwiązać i wyjaśnić na czym polega problem ?

section .text
global _start
_start:
mov eax, 3
mov ebx, 0
mov ecx, tekst
mov edx, tekst_dl
int 80h

mov eax, 3
mov ebx, 0
mov ecx, ile
mov edx, [dlugosc]
int 80h

xor esi,esi

_petla:
cmp esi, [ile]
je _koniec
mov eax, 4
mov ebx, 1
mov ecx, tekst
mov edx, tekst_dl
int 80h

inc esi
jmp _petla

_koniec:
mov eax, 1
int 80h

section .data
tekst: times 20 db 0
tekst_dl equ $ -tekst
ile db 0, 0ah
dlugosc dd $-ile








0

Z klawiatury nie otrzymujesz gotowej liczby, tylko tekst złożony z cyfr. Trzeba go przekształcić.

0

3 osoba z tym samym kodem w tym tygodniu. Nawet nie zerknąłeś czy już ktoś o to nie pytał...

1 użytkowników online, w tym zalogowanych: 0, gości: 1