Pregunta
¿Qué hay lea 0x4(%esp),%ecx
media en AT & T asamblea? Lo que realmente es 0x4 (% esp)?
Solución
Es %esp + 0x4
.
LEA
es sinónimo de carga dirección efectiva. Es, en este caso, una adición simple, como se muestra arriba. Por lo general las personas y los compiladores realmente no lo utilizan más porque CPU ahora se distribuye con una unidad de generación de direcciones ingenioso (llamado de otra manera AGU), que le permite utilizar todo tipo de aritmética de lujo a las direcciones de los registros de cómputo y valores. En resumen, todo lo que hicieron con lea
, ahora puede incrustarlo dentro de cualquier otra instrucción.
Otros consejos
lea ecx,[esp+4]
esp
es el puntero de pila. 0x4 es el desplazamiento. la sintaxis de AT & T tiene la command source, destination
y el comando aquí es LEA
que es "Dirección carga efectiva."
Así que estamos diciendo a la CPU para cargar la dirección de "pila puntero + 4" en el registro "ecx"