Jak w assemblerze obliczyć długość stringa i porównać 2 stringi ?
Robiłem coś takiego:
strlength: ;oblicza dlugosc ds:si
push bx
mov cx,0 ;CX przechowuje wynik
cld
strlen_skok:
inc cx
lodsb
cmp al,0 ;0 konczy stringa
je strlen_end
jmp strlen_skok
strlen_end:
dec cx ;wynik jest o 1 za duzy - trzeba go poprawic
mov ax,cx ;wynik w ax
pop bx
ret
niestety - nie oblicza dlugosci stringa