Intrucción LEA
Hola amigos:
Me gustaría que alguien me dijera (si sois tan amables), a que instrucción de alto nivel (o pseudocódigo) equivale la instrucción LEA (ya sea con una instrucción, varias, y/o sise puede, claro...).
Muchas gracias por vuestra colaboración. Saludos!
Me gustaría que alguien me dijera (si sois tan amables), a que instrucción de alto nivel (o pseudocódigo) equivale la instrucción LEA (ya sea con una instrucción, varias, y/o sise puede, claro...).
Muchas gracias por vuestra colaboración. Saludos!
De que lenguaje estas hablando? Ningun lenguaje es tan especifico como "Load efective addres"... Lo mas cercano es el C que te permite trabajar con punteros... Un estracto que se encuentra por internet googleando dice:
LEA destino,origen (Load Effective Address, cargar dirección efectiva):
Carga la dirección efectiva del operando origen en destino. "LEA AX,[BX+DI+2]" calcularía la suma BX+DI+2 e introduciría el resultado en AX (y no el contenido de la dirección apuntada por BX+DI+2, pues eso sería un MOV). Como destino no se puede usar un registro de segmento. Si el destino es de 32 bits, el offset que se carga es de este tipo. En modo protegido sólo usaremos este último, pues offsets de 16 bits carecerán de sentido.
Con lo que podriamso asimilarla al operador & del C (el que retorna la direccion de una variable) pero no es directamente transportable... realmente un lenguaje de alto nivel (de medio tambien) abstrae al programador de las particularidades de la maquina y esta es una (muy mala) particularidad de la mierda de los procesadores intel... una arquitectura de mierda a mi juicio....
Espero que esto te pueda alludar... suerte.
LEA destino,origen (Load Effective Address, cargar dirección efectiva):
Carga la dirección efectiva del operando origen en destino. "LEA AX,[BX+DI+2]" calcularía la suma BX+DI+2 e introduciría el resultado en AX (y no el contenido de la dirección apuntada por BX+DI+2, pues eso sería un MOV). Como destino no se puede usar un registro de segmento. Si el destino es de 32 bits, el offset que se carga es de este tipo. En modo protegido sólo usaremos este último, pues offsets de 16 bits carecerán de sentido.
Con lo que podriamso asimilarla al operador & del C (el que retorna la direccion de una variable) pero no es directamente transportable... realmente un lenguaje de alto nivel (de medio tambien) abstrae al programador de las particularidades de la maquina y esta es una (muy mala) particularidad de la mierda de los procesadores intel... una arquitectura de mierda a mi juicio....
Espero que esto te pueda alludar... suerte.
Para no infringir en plagios y demas (bueno, para no ser hijoputa con los de la pagina de donde saque la informacion) te dejo la direccion de esta:
http://www.rinconsolidario.org/eps/asm8086/CAP6.html
http://www.rinconsolidario.org/eps/asm8086/CAP6.html
