Conceptos Básicos
-
MOV destino, fuente: transfiere un byte o una palabra desde el operando fuente al operando destino. El destino puede ser un registro o un elemento de memoria. El operando fuente puede ser un registro, un elemento de memoria o un valor inmediato. Ambos operandos deben ser del mismo tipo.
-
PUSH fuente: introduce el dato en la pila. No se puede utilizar CS como operando fuente. Equivale a decrementar el puntero de la pila SP en 2(equivale a una palabra) y luego transferir la palabra del operando fuente a lo alto de la pila.
-
POP destino: Extrae un dato de la pila y lo lleva al destino.
-
Ejemplo
-
POP AX
MOV AX, {SP}
ADD SP,2
Queremos sacar de la pila la variable PEPE:
POP PEPE
MOVE AX,{SP}
ADD SP, 2
MOVE PEPE,AX
-
-
IN acumulador, puerto: lee el contenido del puerto de E/S y lleva el dato al acumulador.
-
OUT puerto, acumulador: enviará el dato al puerto de E/S
-
LEA registro, fuente: carga la dirección efectiva de un dato en un registro. El operando fuente debe ser un operando de memoria y el destino es un registro de 16 bits.
LEA AX, XX {SI}
Si XX = 1234h
SI = 0006h
AX será igual a 123Ah
-
-
-
LDS registro, fuente:transfiere un puntero de 32 bits (dirección completa compuesta por desplazamiento y segmento) correspondiente al segundo operando (debe ser un operando de memoria de doble palabra). El registro de segmento es el DS.
-
LES registro, fuente:igual al anterior pero utiliza el segmento ES.
-