Instrucciones en lenguaje ensamblador Flashcards
¿Qué tipos de instrucciones hay?
De definición, movimientos, aritméticas, lógicas, comparativas y de saltos.
¿Cuáles son instrucciones de definición?
Define Byte(DB), Define word(DW), Define doubleword(DD)
¿Qué hace Define Byte?
Reserva 1 byte (8bits)
¿Qué hace Define Word?
Reserva 2 bytes (16bits)
¿Qué hace Define double word?
Reserva 4 bytes (32bits)
¿Cuáles son instrucciones de movimientos?
MOV, Push, POP, LEA, LDS, LES
¿Qué hace 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
La fuente puede ser un registro, elemento de memoría o valor inmediato.
¿Qué hace PUSH fuente?
Decrementa el SP en 2, transfiere el operando fuente a la cima de la pila
¿Qué hace POP destino?
Transfiere el elemento en la cima de la pila al operando destino, incrementa el SP en 2
¿Qué hace LEA destino, fuente?
Transfiere la dirección efectiva del operando fuente al operando destino
Fuente: Byte o palabra
Registro de 16 bits
¿Qué hace LDS destino, fuente?
Transfiere un puntero de 32 bits (compuesta por segmento y desplazamiento)
Destino: Debe ser un registro pero no de segmento
Fuente: Operando de memoria de doble palabra
¿Qué hace LES destino, fuente?
Igual que LDS pero el segmento se transfiere a ES
¿Cuáles son instrucciones aritméticas?
ADD, ADC, SUB, SBB, MUL, IMUL, DIV, IDIV, INC, DEC, NEG
¿Qué hace ADD destino, fuente?
Suma dos operandos guardando el resultado en el destino, los operandos deben ser del mismo tipo (byte o palabra)
¿Qué hace ADC destino, fuente?
Suma dos operando incrementando en 1 si la bandera de acarreo está activa
¿Qué hace SUB destino, fuente?
Resta el operando fuente al operando destino, el resultado se almacena en destino. Ambos operando deben ser del mismo tipo.
¿Qué hace SBB destino, fuente?
Resta el operando fuente al destino. Resta 1 si la bandera de acarreo está activa.
¿Qué hace MUL fuente?
Multiplica sin considerar el signo, AX o AL por el operando fuente
Si fuente es byte se multiplica por AL y se almacena en AX
Si es palabra se multiplica por AX y se almacena en DX:AX (alta en DX y baja en AX)
¿Qué hace IMUL?
Lo mismo que MUL fuente, pero tomando en cuenta el signo
¿Qué hace DIV Fuente?
Divide sin considerar el signo, AX o DX:AX entre fuente
Si fuente es byte divide AX entre fuente el cociente se almacena en AL y el resto en AH
Si es palabra divide DX:AX entre fuente el cociente se almacena en AX y el resto en DX
¿Qué hace IDIV?
Divide considerando el signo de igual forma que DIV fuente.
¿Qué hace INC destino?
Incrementa destino en 2
¿Qué hace DEC destino?
Decrementa el operando destino en 1
¿Qué hace NEG destino?
Niega el operando destino complemento a 2