Todas las instrucciones en ensamblador

Solo disponible en BuenasTareas
  • Páginas : 10 (2279 palabras )
  • Descarga(s) : 0
  • Publicado : 11 de mayo de 2011
Leer documento completo
Vista previa del texto
APÉNDICE E.- JUEGO DE INSTRUCCIONES DEL 8086,8087, 80186, 80286 Y 80287.

En la siguiente lista de instrucciones, para la descripción y su sintaxis se recurre a las siguientes abreviaturas:

acum uno de los acumuladores: AX o AL.
reg cualquiera de los registros
segreg uno de los registros de segmento
r/m uno de los operandos generales: registro, memoria, basado, indexado obasado-indexado
inmed constante o símbolo de 8 o 16 bits
mem un operando de memoria: símbolo, etiqueta, variable.
etiqueta etiqueta de instrucciones.
src fuente en operaciones de cadena
dest destino en operaciones de cadena.
 
 
8086/8088

AAA Ajuste ASCII para adición.
AAD Ajuste ASCII para división.
AAM Ajuste ASCII para multiplicación.
AAS Ajuste ASCII para división.
ADCacum, inmed Suma con acarreo.
r/m,inmed
r/m, reg
reg, r/m
ADD acum,inmed Suma.
r/m,inmed
r/m, reg
reg, r/m
AND acum,inmed Operación AND a nivel bit.
r/m,inmed
r/m, reg
reg, r/m
CALL etiqueta Llamado.
r/m
CBW Convierte byte apalabra.
CLC Limpia bandera de acarreo.
CLD Limpia bandera de dirección.
CLI Limpia bandera de interrupción.
CMC Complementa bandera deacarreo.
CMP acum,inmed Comparación
r/m,inmed
r/m, reg
reg, r/m
CMPS src,dest Comparación de cadenas.
CMPSB Compara cadenas byte por byte.
CMPSW Compara cadenas palabra por palabra.
CWD Convierte palabra a palabra doble.
DAA Ajuste decimal para adición.
DAS Ajuste decimal para substracción.
DEC r/m Decremento.
reg
DIV r/m División.
ESC inmed, r/m Escape con 6 bits.HLT Alto.
IDIV r/m División entera.
IMUL r/m Mutiplicación entera.
IN accum,inmed Entrada desde puerto.
acum, DX
INC r/m Incremento.
reg
INT3 Interrupción3 codificada como un byte.
INT inmed Interrupción0-255.
INTO Interrupción en overflow.
IRET Retorno de interrupción.
JMP etiqueta Brinco incondicional.
r/m
J(condición)etiqueta Brinca deacuerdo a las condiciones: A (arriba), AE (arriba o igual), B (siguiente), BE (siguiente o igual), C(acarreo), CXZ (CX en cero), E (igual), G (mayor), GE (mayor o igual), L (menor), LE (menor o igual), NA (no anterior), NAE (no anterior o igual), NB (no siguiente), NBE(no siguiente o igual), NC (no acarreo), NE (no igual), NG(no mayor), NGE (no mayor o igual), NL (no menor), NLE (no menor oigual), NO(no sobreflujo), NP (no paridad), NS (no signo), NZ (no cero), O(sobreflujo), P (paridad), PE(paridad par), PO (paridad impar), S (signo), Z (cero).
LAHF Carga AH con las banderas.
LDS r/m Carga DS.
LEA r/m Carga la dirección.
LES r/m Carga ES.
LOCK Cierra bus.
LODS src Carga cadena.
LODSB Carga byte de cadena en AL.
LODSW Carga palabra de la cadena en AX.
LOOPetiqueta Ciclo.
LOOPE etiqueta Ciclo mientras igual.
LOOPNE etiqueta Ciclo mientras no igual.
LOOPNZ etiqueta Ciclo mientras no cero.
LOOPZ etiqueta Ciclo mientras cero.
MOV acum,mem Mueve un valor del segundo al primer operando
r/m,inmed
mem, acum
r/m, reg
r/m,segreg
reg, inmed
reg,r/m
segreg,r/m
MOVS dest, src Mueve cadena.
MOVSB Mueve cadena byte por byte.MOVSW Mueve cadena palabra por palabra.
MUL r/m Multiplicación.
NEG r/m Niega(complemento a 2).
NOP Operación ociosa.
NOT r/m Invierte valores de bits (complemento a 1).
OR acum, inmed Operación OR a nivel de bit.
r/m,inmed
r/m, reg
reg,r/m
OUTDX, accum Salida por el puerto dado por el primer operando.
inmed, acum (inmediato de 8 bits)
POP r/m Recupera valor de la pila.reg
segreg
POPF Recupera banderas.
PUSH r/m Guarda valor en la pila.
reg
segreg
PUSHF Guarda banderas.
RCL r/m,1 Rotación a la izquierda con acarreo.
r/m,CL
RCR r/m, 1 Rotación a la derecha con acarreo.
r/m, CL
REP Repite.
REPE Repite si igual.
REPNE Repite si no igual.
REPNZ Repite si no cero.
REPZ Repite si cero.
RET [inmed] Regresa después de recuperar bytes...
tracking img