¿Alguien podría explicar qué significa esto? (Sintaxis Intel, x86, Windows)
and dword ptr [ebp-4], 0
La dword ptrpieza se denomina directiva de tamaño. Esta página los explica, pero no fue posible establecer un vínculo directo a la sección correcta.
Básicamente, significa "el tamaño del operando de destino es de 32 bits", por lo que esto será bit a bit Y el valor de 32 bits en la dirección calculada tomando el contenido del ebpregistro y restando cuatro con 0.
PTRnecesita la pieza? ¿No es suficiente dword para codificar el tamaño? NASM no usaptrAFAIK.Modern processors, including embedded systems, usually have a word size of 8, 16, 24, 32, or 64 bits, while modern general purpose computers usually use 32 or 64 bits.en.wikipedia.org/wiki/Word_(computer_architecture)Considere la figura incluida en esta otra pregunta .
ebp-4es su primera variable local y, visto como un puntero dword, es la dirección de un entero de 32 bits que debe borrarse. Tal vez tu fuente comience confuente
Es una declaración de 32 bits. Si escribe en la parte superior de un archivo de ensamblaje la declaración [bits 32], entonces no necesita escribir DWORD PTR. Así por ejemplo:
fuente