Bonsoir à tous.
Je continue, doucement mais surement, l'apprentissage de l'assembleur. J'ai maintenant bien compris les bases je pense, mais je me heurte ici a un problème de compréhension.
ebp+8 contient une chaîne de caracteres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 mov eax, [ebp+8] movzx eax, byte ptr[eax] mov [ebp-0eh], al sar dword ptr [ebp-0ch], 3 nop
Ce que je comprends :
1. On recupere la chaine dans eax
2. On ne conserve que le dernier otet (mais qu'est ce que cela represente ? ma chaine fait 4 octets, normal puisque c'est un pointeur. Mais garder le dernier bit, ça m'etonne :/)
3. On copie cet octet dans la pile [ebp-0eh]
4. on divise ebp-0ch par 8
Bref, quelqu'un comprendrait il l'instruction movzx et son interet?
Merci d'avance.
Guillaume.
Partager