1) TRANSFERENCIA
DE DATOS.
A) DE PROPOSITO GENERAL
1.-
MOV destino, Fuente ;
Mueve datos
2.-
PUSH fuente ; Mete datos
a la Pila
3.-
POP destino ; Saca datos de la Pila
4.-
XCHG destino, fuente ; Intercambia contenidos
5.-
XLAT ;
Traduce (Uso para tablas)
B) GRUPO DE ENTRADA-SALIDA.
1.-
IN acumulador, puerto ; Lee un dato del Puerto
2.-
OUT puerto, acumulador ; Saca un dato por el puerto
C) DE OPERANDO DE DIRECCION.
1.-
LEA destino, fuente ; Carga una dirección efectiva
2.-
LDS destino, fuente ; Carga el reg. De segmento datos
3.-
LES destino, fuente ;
Carga el reg. De segmento extra
D) TRANSFERENCIA DE BANDERAS.
1.-
LAHF ;
Carga al reg. AH con las banderas
2.-
SAHF ; Envía el reg AH al reg. De Banderas
3.-
PUSHF ;
Guarda las banderas en el stack
4.-
POPF ;
Lo que saca del stack lo pone en el reg. De banderas
2)
INSTRUCCIONES ARITMETICAS
A) DE SUMA
1.-
ADD destino, fuente ; Suma de números binarios
2.-
ADC destino, fuente ; Suma con carry
3.-
INC destino ; Incrementos de 1
4.-
DAA ; Ajuste decimal después de sumar
5.-
AAA ; Ajuste ASCII después de sumar
B) DE RESTA
1.-
SUB destino, fuente ; resta valores binarios
2.-
SBB destino, fuente ; resta con borrow
3.-
CMP destino, fuente ; compara datos
4.-
DAS ; Ajuste decimal después de restar
5.-
AAS ; Ajuste ASCII después de restar
C) DE MULTIPLICACION.
1.-
MUL fuente (sin signo) ; Multiplica sin signo
2.-
IMUL fuente (con signo) ;
Multiplica con signo (enteros)
3.-
AAM ; Ajuste ASCII para la
multiplicación
D) DIVISION
1.- DIV fuente (sin signo) ; Divide sin signo
2.-
IDIV fuente (con signo) ;
Divide con signo
3.-
AAD ; Ajuste ASCII para la división
3) INSTRUCCIONES
DE MANIPULACION DE BITS
A) LOGICAS
1.- NOT destino ;
Negación lógica (No)
2.-
AND destino, fuente ; Conjunción lógica (y)
3.-
OR destino, fuente ; Disyunción lógica (o)
4.-
XOR destino, fuente ; OR Exclusiva
5.-
TEST destino, fuente ; Prueba bits
6.-
NEG destino ; Negación
B) DE DESPLAZAMIENTO
1.-
SHL destino, contador ; Corrimiento lógico a la izquierda
2.-
SAL destino, contador ; Corrimiento algebraico a la izq.
3.-
SHR destino, contador ; Corrimiento lógico a la Derecha
4.-
SAR destino, contador ; Corrimiento algebraico a la Der.
C) GIROS
1.- ROL
destino, contador ; Rotación a
la izquierda
2.-
ROR destino, contador ; Rotación a la derecha
3.-
RCL destino, contador ; Rotación a la izquierda con carry
4.-
RCR destino, contador ; Rotación a la iderecha con carry
4) INSTRUCCIONES
DE CADENA
1.- MOVS cadena-destino, cadena-fuente ; Mueve cadenas
MOVSB ----- MOVSW
2.- LODS cadena-fuente ; Carga cadena
3.- STOS cadena-destino, cadena-fuente ; Almacena una cadena
STOSB -----STOSW
4.- CMPS cadena-destino, cadena-fuente ; Compara cadenas
CMPSB ------CMPSW
5.- SCAS cadena-destino ; Explora una cadena
SCASB ------SCASW
5) INSTRUCCIONES DE TRANSFERENCIA DE PROGRAMA
A)
TRANSFERENCIA
INCONDICIONAL
1.-
CALL destino ; llama a un
procedimiento
2.-
RET (RETN, RETF) ; regresa de un procedimiento
3.- JMP
destino ;
Salto incondicional
B)
TRANSFERENCIA
CONDICIONAL
1.-
JB/JNAE (Salta si es bajo /
no arriba ni igual) CF=1
2.-
JAE/JNB (Salta si está arriba
o igual / no está bajo) CF=0
3.-
JBE/JNA (Salta si es bajo o
igual / no está arriba) CF=1 o ZF=1
4.- JA/JNBE
(Salta si está arriba / no bajo ni igual) CF=0 y ZF=0
5.- JE/JZ (Salta si fueron iguales) ZF=1
6.- JNE/JNZ
(Salta si no es igual a) ZF=0
7.- JL/JNGE
(menor/no más grande ni igual) SF diferente de OF
8.- JGE/JNL
(más grande o igual /no menor)
SF=OF
9.- JLE/JNG
(menor o igual/no más grande)
ZF=1 o SF diferente de 0F.
10.- JG/JNLE (más grande/no menos ni igual) ZF=0 o SF=OF
11.- JP/JPE (paridad puesto/si hay paridad
par) PF=1
12.- JNP/JPO (paridad no puesta/ paridad impar) PF=0
13.- JS (bit de signo puesto)
S=1
14.- JNS (bit de signo no puesto) SF=0
15.- JC (carry puesto) CF=1
16.- JNC (carry no puesto) CF=0
17.- JO (sobre flujo puesto) OF=1
18.- JNO (sobre flujo no puesto) OF=1
C)
CONTROL
DE ITERACIONES
1.- LOOP ETIQ ; Repetir hasta que CX=0
2.- LOOPE/LOOPZ ETIQ ;
Repetir hasta que CX=0 o Z=1
3.- LOOPNE/LOOPNZ ETIQ ;
Rep. Hasta que CX=0 o Z=0
4.- JCXZ ETIQ ; Salta si CX=0
6) INSTRUCCIONES
DE INTERRUPCION
1.-
INT vector ;
petición de Interrupción
2.-
IRET ; Regreso de una interrupción
7) INSTRUCCIONES
DE CONTROL DEL PROCESADOR
a.
OPERACIONES
CON BANDERAS
1.-
STC Pone la bandera de
carry C=1
2.-
CLC Limpia la bandera de
carry C=0
3.-
CMC Complementa la bandera de carry
4.-
STD Pone la bandera de
dirección D=1
5.-
CLD Limpia la bandera de dirección D=0
6.-
STI Pone la bandera de
interrupción habilitada IF=1
7.-
CLI Limpia la bandera de
interrupción habilitada IF=0
b. instrucciones
de control del procesador
1.- HLT
Pone al micro en
estado estático.
2.- WAIT
Entra en edo. De espera hasta que se active la línea
TEST.
8) INSTRUCCIONES
DE CONVERSIÓN
1.- CBW Conversión de Byte a palabra
2.- CWD Conversión de palabra a doble palabra
9) de uso general
AX: Acumulador (AL: AH)
BX: Registro base (BL: BH)
CX: Registro contador
(CL: CH)
DX: Registro de datos
(DL: DH)
10) Registros de segmento (Solo se pueden usar para los
usos mencionados a excepción de ES)
DS: Registro del segmento de
datos
ES: Registro del
segmento extra
SS: Registro del
segmento de pila
CS: Registro del segmento de código
11) Registros punteros (También pueden tener uso general)
BP: Registro de
apuntadores base
SI: Registro índice
fuente
DI: Registro ìndice
destino
12) Registros especiales (Solo se pueden usar para los
usos mencionados)
SP: Registro apuntador de
la pila
IP: Registro apuntador de
la siguiente instrucción
F: Registro de banderas
(8 bits)
No hay comentarios:
Publicar un comentario