Quelqu'un pourrait-il expliquer ce que cela signifie? (Intel Syntax, x86, Windows)
and dword ptr [ebp-4], 0
Le dword ptr
partie s'appelle une directive de taille. Cette page les explique, mais il n'était pas possible de créer un lien direct vers la bonne section.
Fondamentalement, cela signifie que "la taille de l'opérande cible est de 32 bits", ce qui signifie que la valeur de 32 bits à l'adresse bit calculée à l'adresse calculée en prenant le contenu du registre ebp
et en soustrayant quatre avec 0.
Considérez le chiffre inclus dans cette autre question . ebp-4
est votre première variable locale et, vu comme un pointeur dword, il s’agit de l’adresse d’un entier 32 bits à effacer. Peut-être que votre source commence par
Object x = null;
C'est une déclaration 32bit. Si vous tapez l'instruction [bits 32] au début d'un fichier Assembly, vous n'avez pas besoin de taper DWORD PTR. Donc par exemple:
[bits 32]
.
.
and [ebp-4], 0