Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ins 8086
Ins 8086
INSTRUCCIONES DE TRANSFERENCIA:
NINGUNA INSTRUCCIN DE TRANSFERENCIA AFECTA
AL REGISTRO DE ESTADO (SALVO LAS EXPLCITAS
CON EL REGISTRO DE ESTADO)
A) GENRICAS
MOV
B) DE CADENAS
C) DE PILA
D) DE INTERCAMBIO
XCHG
E) DE ACCESO A TABLA
XLAT
F) DE ENTRADA O SALIDA
IN, OUT
G) DE DIRECCIONES LGICAS
LAHF, SAHF
A) GENRICAS:
Mnemotcnico: MOV
(MOVe)
Sintaxis:
MOV
destino, origen
Operacin:
destino origen
POSIBLES COMBINACIONES:
DESTINO
ORIGEN
REGISTRO
DATO INMEDIATO
EJEMPLOS
MOV AX, 23759
MOV CL, 7Fh
MEMORIA
DATO INMEDIATO
REGISTRO
MEMORIA
MEMORIA
REGISTRO
MOV 2000[BX], DX
MOV [BX+2000], DX
REGISTRO
(*)
REGISTRO
MOV DS, AX
MOV BP, SP
UTILIDAD:
TOMAR DATOS PARA UBICARLOS EN EL LUGAR
ADECUADO ANTES DE PROCESARLOS, Y PARA
GUARDAR EL RESULTADO EN EL LUGAR
OPORTUNO.
B) DE CADENAS (I):
UTILIDAD:
ACCEDER DE MANERA SECUENCIAL A LOS
DATOS O ELEMENTOS DE UNA CADENA, LISTA O
VECTOR SIN TENER QUE ACTUALIZAR DE
MANERA EXPLCITA, POR PROGRAMA, EL
HIPOTTICO PUNTERO UTILIZADO PARA EL
ACCESO
LODSB
Operacin:
AL DS:[SI]
SI SI+K
Mnemotcnico: LODSW
Sintaxis:
LODSW
Operacin:
AX DS:[SI]
SI SI+K
STOSB
Operacin:
DS:[DI] AL
DI DI+K
Mnemotcnico: STOSW
Sintaxis:
STOSW
Operacin:
DS:[DI] AX
DI DI+K
Sintaxis:
MOVSB
Operacin:
Mnemotcnico: MOVSW
Sintaxis:
MOVSW
Operacin:
C) DE PILA (I):
Mnemotcnico: PUSH
Sintaxis:
PUSH origen
Operacin:
SP SP-2
SS:[SP] palabra origen
Mnemotcnico: POP
Sintaxis:
POP destino
Operacin:
(PUSH Flags)
Sintaxis:
PUSHF
Operacin:
SP SP-2
SS:[SP] registro de estado
Utilidad:
Salvaguardar el estado del procesador para poder
restaurarlo posteriormente
__________________________________________________
Mnemotcnico: POPF
(POP Flags)
Sintaxis:
POPF
Operacin:
Utilidad:
Restaurar el estado del procesador o forzar un cierto
estado (es la nica manera de actuar sobre el registro
de estado en su conjunto)
D) DE INTERCAMBIO:
Mnemotcnico: XCHG
(eXCHanGe)
Sintaxis:
Operacin:
operando_1 operando_2
E) DE ACCESO A TABLA:
Mnemotcnico: XLAT
Sintaxis:
XLAT
Operacin:
AL DS:[BX+AL]
(transLATe)
Utilidad:
Permite resolver problemas mediante la tcnica de acceso
a tabla (look-up tables). BX ha de apuntar al inicio de la
tabla con las soluciones, y AL es el dato original utilizado
como ndice de acceso
F) DE ENTRADA O SALIDA
Mnemotcnico: IN
Sintaxis:
IN acumulador, puerto
Operacin:
acumulador puerto
Mnemotcnico: OUT
Sintaxis:
Operacin:
puerto acumulador
Sintaxis:
Operacin:
El operando origen sigue el patrn de cualquier direccionamiento de la memoria, pero no se usa para direccionar
la memoria sino para especificar una palabra que es la
direccin efectiva objeto de transferencia.
Utilidad:
Se usa para iniciar registros punteros (aunque tambin de
cualquier otro tipo) de una manera flexible.
Ejemplo:
LEA SI, [BX+8]
Si BX=1000 entonces el resultado es SI 1008
Sintaxis:
Operacin:
Mnemotcnico: LES
Sintaxis:
Operacin:
Utilidad:
Similar a LDS, pero para trabajar en el espacio de datos
extra.
Sintaxis:
LAHF
Operacin:
Mnemotcnico: SAHF
(Save AH in Flags)
Sintaxis:
SAHF
Operacin:
Utilidad:
Aparte de la que pueda tener para la manipulacin de
varias banderas, el origen de estas instrucciones est en
el deseo de facilitar la migracin del software 8085 a 8086.
INSTRUCCIONES LGICAS:
A) SUMA LGICA:
OR
B) PRODUCTO LGICO:
AND
XOR
D) NEGACIN:
NOT
E) COMPROBACIN DE BITS
TEST
INSTRUCCIONES ARITMTICAS:
A) SUMA SIN Y CON ACARREO:
ADD / ADC
SUB / SBB
C) INCREMENTO Y DECREMENTO:
INC / DEC
D) NEGATIVACIN:
NEG
MUL / IMUL
DIV / IDIV
G) AJUSTE BCD:
PARA LA SUMA (BCD empaqueta.): DAA
(Decimal Adjust for Addition)
PARA LA RESTA
(dem):
DAS
(Decimal Adjust for Subtraction)
PARA LA SUMA (BCD desempaq.): AAA
(Ascii Adjust for Addition)
PARA LA RESTA
(dem):
AAS
(Ascii Adjust for Subtraction)
PARA LA MULTIPLICACIN (dem): AAM
(Ascii Adjust for Multiplication)
PARA LA DIVISIN (dem):
AAD
(Ascii Adjust for Division)
H) EXTENSIN DE SIGNO:
DE OCTETO A PALABRA:
CBW
(Convert Byte in Word)
destino, origen
(destinodestino+origen)
ADC
destino, origen
(destinodestino+origen+C)
SUB
destino, origen
(destinodestino origen)
SBB
destino, origen
(destinodestino origen C)
INC
operando
(operandooperando+1)
DEC
operando
(operandooperando 1)
MUL
operando_8
MUL
operando_16
(DXAXAX*operando_16, dem)
IMUL
operando_8
IMUL
operando_16
(DXAXAX*operando_16, dem)
DIV
operando_8
DIV
operando_16
IDIV
operando_8
IDIV
operando_16
CBW
CWD
INSTRUCCIONES DE COMPARACIN:
LAS INSTRUCCIONES DE COMPARACIN SON INSTRUCCIONES DE
RESTA ARITMTICA, AUNQUE EL RESULTADO DE LA RESTA SE
PIERDE QUEDANDO INAFECTADO EL OPERANDO DESTINO.
LAS BANDERAS DEL REGISTRO DE ESTADO INFORMAN SOBRE LAS
CUALIDADES DEL RESULTADO, PUDINDOSE UTILIZARLAS COMO
CONDICIN
EN
LAS
INSTRUCCIONES
DE
BIFURCACIN
CONDICIONADA.
A) COMPARACIN NORMAL
CMP
B) COMPARACIN DE CADENAS
SCAS y CMPS
Sintaxis: SCASB
Operacin: AL byte ptr ES:[DI]
DIDI 1
Sintaxis: SCASW
Operacin: AX word ptr ES:[DI]
DIDI 2
Sintaxis: CMPSB
Operacin: byte ptr DS:[SI] byte ptr ES:[DI]
DIDI 1
Sintaxis: CMPSW
Operacin: word ptr DS:[SI] word ptr ES:[DI]
DIDI 2
INSTRUCCIONES DE ROTACIN Y DE
DESPLAZAMIENTO:
A) ROTACIN
EXISTEN VARIOS ASPECTOS A CONSIDERAR:
SENTIDO DE LA ROTACIN:
- IZQUIERDA: ROL y RCL
- DERECHA:
ROR y RCR
ROL y ROR
RCL y RCR
B) DESPLAZAMIENTO
EXISTEN VARIOS ASPECTOS A CONSIDERAR:
SHR y SAR
SHL y SHR
Sintaxis:
MNEMOTCNICO
MNEMOTCNICO
operando, 1
operando, CL
A) ROTACIN SIMPLE:
ROL y ROR
(ROtate Left, ROtate Right)
Sintaxis:
MNEMOTCNICO
MNEMOTCNICO
operando, 1
operando, CL
C) DESPLAZAMIENTO LGICO:
SHL y SHR
(SHift Left, SHift Right)
0
C
0
C
D) DESPLAZAMIENTO ARITMTICO:
SAR
(Shift Arithmetic Right)
Bit ms significativo
A) SALTO INCONDICIONAL
JMP
(JuMP)
B) BIFURCACIN CONDICIONADA
Jcondicion
C) LLAMADA Y RETORNO DE PROCEDIMIENTO
CALL
RET
(RETurn)
RETF
(RETurn Far)
D) PETICIN Y RETORNO DE INTERRUPCIN
INT
(INTerrupt)
IRET
(Interrupt RETurn)
E) CONTROL DE UN BUCLE
GENRICO:
LOOP, LOOPE y LOOPNE
PREFIJOS DE REPETICIN:
REP, REPE y REPNE
A) SALTO INCONDICIONAL:
Sintaxis:
JMP
direccin
Direccin directa
Direccin por registro
Direccin indirecta
etctera
B) BIFURCACIN CONDICIONADA
ESTAS INSTRUCCIONES SLO ADMITEN SALTOS
RELATIVOS AL CONTADOR DEPROGRAMA
EL RANGO DEL SALTO EST RESTRINGIDO A +127 Y 128
POSICIONES DE MEMORIA CON RESPECTO A LA DEL
SALTO (A PARTIR DEL 80386 SON POSIBLES SALTOS
RELATIVOS DE MAGNITUD 16 BITS CON SIGNO)
Sintaxis: MNEMOTCNICO
direccin_del_salto
MAYOR
JA
JG
JNBE
JNLE
MAYOR O
IGUAL
JAE
JGE
JNB
JNL
IGUAL
JE
JE
DISTINTO
JNE
JNE
MENOR O
IGUAL
JBE
JLE
JNA
JNG
MENOR
JB
JL
JNAE
JNGE
INSTRUCCIN
Condicin
JO
si hay rebosamiento
O=1
JNO
si no hay rebosamiento
O=0
JB
JC
JNAE
C=1
JAE
JNB
C=0
JE
JZ
si es igual
si el resultado es cero
Z=1
JNE
JNZ
si no es igual
si el resultado no es cero
Z=0
JBE
JNA
C=1
Z=1
JA
JNBE
C=1 y Z=0
JS
si es negativo
S=1
JNS
si es positivo
S=0
JP
JPE
si P est activa
si la paridad es par
P=1
JNP
JPO
si P no est activa
si la paridad es impar
P=0
JL
JNGE
S=1 y O=1
JGE
JNL
S=O
JLE
JNG
Z=1
(S=O=1)
JG
JNLE
Z=0
S=0
JCXZ
Si CX vale cero
CX=0
INSTRUCCIN
Condicin
JO
Jump if Overflow
O=1
JNO
O=0
JB
JC
JNAE
Jump if Below
Jump if Carry
Jump if Not Above or Equal
C=1
JAE
JNB
C=0
JE
JZ
Jump if Equal
Jump if Zero
Z=1
JNE
JNZ
Z=0
JBE
JNA
C=1
Z=1
JA
JNBE
Jump if Above
Jump if Not Below or Equal
C=1 y Z=0
JS
Jump if Sign
S=1
JNS
S=0
JP
JPE
Jump if Parity
Jump if Parity Even
P=1
JNP
JPO
P=0
JL
JNGE
Jump if Less
Jump if Not Greater or Equal
S=1 y O=1
JGE
JNL
S=O
JLE
JNG
Z=1
(S=O=1)
JG
JNLE
Jump if Greater
Jump if Not Less or Equal
Z=0
S=0
JCXZ
Jump if CX is Zero
CX=0
CXCX-1
Si CX0 entonces bifurcar a direccin
LOOPE / LOOPZ
Operacin:
direccin
CXCX-1
Si CX0 y Z=1 entonces bifurcar a direccin
LOOPNE / LOOPNZ
Operacin:
direccin
CXCX-1
Si CX0 y Z=0 entonces bifurcar a direccin
(REPeat)
Operacin:
CXCX-1
Si CX0 entonces repetir instruccin MOVS o STOS
REPE / REPZ
Operacin:
REPNE / REPNZ
Operacin:
CXCX-1
Si CX0 y Z=0 repetir instruccin CMPS o SCAS
OPERACIN
EFECTO
CLC
Desactivar el acarreo
C0
STC
Activar el acarreo
C1
CMC
Complementar el acarreo
C!C
CLI
I0
STI
I1
CLD
D0
STD
D1
NOP
No hacer nada
-------
ESC
HLT
LOCK
WAIT
INSTRUCCIN
MOV
MOVSB, MOVSW
LODSB, LODSW
STOSB, STOSW
PUSH, POP
TRANSFERENCIA PUSHF, POPF
XCHG
XLAT
SAHF, LAHF
LEA, LDS, LES
IN, OUT
AND
OR
LGICAS
XOR
NOT
TEST
ADD, ADC
SUB, SBB
NEG
INC, DEC
ARITMTICAS
MUL, IMUL
DIV, IDIV
DAA, DAS
AAA, AAS, AAM, AAD
CBW, CWD
CMP
COMPARACIN
SCASB, SCASW
CMPSB, CMPSW
ROTACIN Y
ROR, ROL, RCR, RCL
DESPLAZAMIENTO SHR, SHL, SAR
JMP
Jcondicin
CALL
CONTROL DE
RET, RETF
FLUJO
INT, IRET
LOOP, LOOPE, LOOPNE
REP, REPE, REPNE
CLC, STC, CMC
CLI, STI
CONTROL DEL
CLD, STD
SISTEMA
NOP
ESC
HLT, LOCK, WAIT
DESCRIPCIN
Genrica
Movimiento de cadenas
Carga en acum. (cadenas)
Guarda acum. (cadenas)
De pila (meter y sacar)
Id. (registro de estado)
Intercambio
De acceso a tabla
De registro de estado
De direcciones
De entrada y salida
Producto lgico
Suma lgica
Suma lgica exclusiva
Negacin (inversin)
Comprobacin
Suma (sin y con acarreo)
Resta (sin y con prstamo)
Negativacin
Incremento y decremento
Multiplicacin (s/c signo)
Divisin (sin/con signo)
Ajuste BCD (empaqueta.)
dem (desempaquetado)
Extensin de signo
Comparacin
Acumulador con cadena
Dos cadenas
Rotaciones varias
Desplazamientos varios
Salto incondicional
Saltos condicionados
Llamada a subrutina
Retorno de subrutina
Interrupcin, retorno
Gestin de bucles
dem (cadenas)
Bandera de acarreo
Bandera de interrupcin
Bandera de direccin
No operacin
Escape
Control hardware vario