143 votes

Que signifie "dword ptr"?

Quelqu'un pourrait-il expliquer ce que cela signifie? (Intel Syntax, x86, Windows)

 and     dword ptr [ebp-4], 0
 

143voto

unwind Points 181987

La partie "dword ptr" 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 "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 .

9voto

mico Points 703

Considérons la figure jointe à cette autre question . ebp-4 est votre première variable locale et, vu comme un pointeur dword, c'est l'adresse d'un entier de 32 bits qui doit être effacé. Peut-être que votre source commence par

 Object x = null;
 

5voto

zikzak Points 11

C'est une déclaration 32bit. Si vous tapez l'instruction [bits 32] au haut d'un fichier d'assemblage, vous n'avez pas besoin de taper DWORD PTR. Donc par exemple:

 [bits 32]
.
.
and  [ebp-4], 0
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X