Explication asm

Résolu
c moi -  
 c moi -
Lu all,
je voudrais une petite explication pour le language assembleur,
je suis en train de lire un tuto et les registre sont de la forme ax, ah ect...
mais dans le mon livre il est que j'ai les registre sont de la forme eax, eah ect ...
c koi la difference??
merci et a ++ les amis

6 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
EBP et EIP sont des registres spéciaux, tout comme ESP.
Lorsque tu programmes, tu as une pile dont sa base se trouve à l'adresse EBP et le haut à l'adresse ESP.
Si tu modifies ESP pour y mettre n'importe quoi, tu ne pourras plus utiliser ta pile, très gênant.
EIP ne peut pas être modifié directement. Il contient l'adresse de la prochaine instruction à exécuter (il pointe vers la prochaine instruction à exécuter, c'est pareil).
Donc si tu voulais t'en servir comme registre, ton programme aurait de fortes chances de planter car la prochaine adresse à exécuter serait bidon.

Mais tu peux modifier autant que tu le souhaites les registres, EAX, EBX, ECX, EDX.
1
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Sur une machine 32 bits :
AX représente les 16 bits de poids faibles d'EAX.
AX est à son tour divisé en deux registres de 8 bits, AH (poids fords) et AL (poids faibles).
0
c moi
 
DONC si g bien compri : EAX != AX(bizar car dans dans un prog sa donne le meme resulta si je mais eax a la place de ax).
mais pk ya pas eip ebp ect
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Oui, c'est normal que dans certains cas ça donne le même résultat.
AX représente les bits de poids faibles d'EAX. Donc si par exemple tu fais :
mov eax,5

eax vaudra 5 et ax vaudra 5 également.

Je comprends pas ta dernière question ?
EIP ça pointe vers la prochaine instruction à exécuter. Et l'EBP pointe vers la base de la pile courante.
Cdlt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
c moi
 
ha docor merci je compren mieu, ma derniere question etai pk on peut pas utiliser eip et ebp comme on le fai avec ax, mais comme tu la dit c normale car il pointe vers ...(mais en faite sa veut dire quoi pointe?).
0
c moi
 
ok merci g tou compri grace a toi merci et a +
0