jueves, 13 de octubre de 2016

Mnemonicos

Un lenguaje en mnemónico o lista de instrucciones consiste en un conjunto de códigos simbólicos, cada uno de los cuales corresponde a una instrucción.

Cada fabricante utiliza sus propios códigos, y una nomenclatura distinta para nombrar las variables del sistema.

El lenguaje en mnemónico es similar al lenguaje ensamblador del micro.

MOV (transferencia)
Sintaxis: MOV dest, origen.
Transfiere datos de longitud byte o palabra del operando origen al operando destino. Pueden ser operando origen y operando destino cualquier registro o posición de memoria direccionada de las formas ya vistas, con la única condición de que origen y destino tengan la misma dimensión.

LEA (carga dirección efectiva)
Sintaxis: LEA destino, origen
Transfiere el desplazamiento del operando fuente al operando destino. Otras instrucciones pueden a continuación utilizar el registro como desplazamiento para acceder a los datos que constituyen el objetivo.

POP (extraer de la pila)
Sintaxis: POP destino
Transfiere el elemento palabra que se encuentra en lo alto de la pila (apuntado por SP) al operando destino que a de ser tipo palabra, e incrementa en dos el registro SP.

PUSH (introduce en la pila)
Sintaxis: PUSH origen
Decrementa el puntero de pila (SP) en 2 y luego transfiere la palabra especificada en el operando origen a la cima de la pila.

CALL (llamada a subrutina)
Sintaxis: CALL destino
Transfiere el control del programa a un procedimiento, salvando previamente en la pila la dirección de la instrucción siguiente, para poder volver a ella una vez ejecutado el procedimiento.

JMP (salto) 
Sintaxis: JMP dirección o JMP SHORT dirección
Transfiere el control incondicionalmente a la dirección indicada en el operando.

RET / RETF (retorno de subrutina)
Sintaxis: RET [valor] o RETF [valor]
Retorna de un procedimiento extrayendo de la pila la dirección de la siguiente dirección. Se extraerá el registro de segmento y el desplazamiento en un procedimiento de tipo FAR (dos palabras) y solo el desplazamiento en un procedimiento NEAR (una palabra). si esta instrucción es colocada dentro de un bloque PROC-ENDP (como se verá en el siguiente capítulo) el ensamblador sabe el tipo de retorno que debe hacer, según el procedimiento sea NEAR o FAR.

INT (interrupción)
Sintaxis: INT n (0 <= n <= 255)
Inicializa un procedimiento de interrupción de un tipo indicado en la instrucción.

ADD (suma)
Sintaxis: ADD destino, origen
Suma los operandos origen y destino almacenando el resultado en el operando destino. Se activa el acarreo si se desborda el registro destino durante la suma.

SUB (resta) 
Sintaxis: SUB destino, origen
Resta el operando destino al operando origen, colocando el resultado en el operando destino. Los operandos pueden tener o no signo, siendo necesario que sean del mismo tipo, byte o palabra.

MUL (multiplicación sin signo)
Sintaxis: MUL origen  (origen no puede ser operando inmediato)
Multiplica el contenido sin signo del acumulador por el operando origen.

DIV (división sin signo)
Sintaxis: DIV origen  (origen no puede ser operando inmediato)
Divide, sin considerar el signo, un número contenido en el acumulador y su extensión (AH, AL si el operando es de tipo byte o DX, AX si el operando es palabra) entre el operando fuente.





No hay comentarios:

Publicar un comentario