можете сказать почему не работает
когда сравниваю так
char *s1 = "1234567892";
char *s2 = "1234567890";
все работает
а если так
char *s1 = "1234567890";
char *s2 = "1234567891";
то он возвращает не то значение
вот код
global _ft_strcmp
section .text
_ft_strcmp: xor rax, rax
xor rcx, rcx
compaire: cmp byte[rdi + rcx], 0
je done
cmp byte[rsi + rcx], 0
je done
mov al, byte[rdi + rcx]
cmp al, byte[rsi + rcx]
jne done
inc rcx
jmp compaire
done:
mov al, byte[rdi + rcx]
sub al, byte[rsi + rcx]
ret