Intel 8086

Solo disponible en BuenasTareas
  • Páginas : 8 (1913 palabras )
  • Descarga(s) : 0
  • Publicado : 7 de mayo de 2010
Leer documento completo
Vista previa del texto
Intel 8086
Arquitectura

Programación en Ensamblador Ing. Marcelo Tosini - 2001

Características generales
• Procesador de 16 bits • Bus de direcciones de 20 bits : 1 Mbyte • Bus de datos interno de 16 bits • Bus de datos externo de • 16 bits en el 8086 • 8 bits en el 8088 • Original del IBM PC/XT • 89 instrucciones • No tiene coprocesador
Programación en Ensamblador Ing. Marcelo Tosini -2001

Tipos de datos
• ASCII
• BCD •Entero sin signo • 8 bits • 16 bits • Entero con signo • 8 bits • 16 bits • Cadenas
Programación en Ensamblador Ing. Marcelo Tosini - 2001

0..255 0..65535

-128..127 -32768..32767 secuencia de bytes o palabras

Manejo de memoria
Descriptor de segmento : desplazamiento

00000

FFFFF

Segmento 64 Kb

1 mega byte

Programación enEnsamblador Ing. Marcelo Tosini - 2001

Manejo de memoria (ejemplos)
C000 : 0130 1200 : 0100 1000 : 2100 0500 : D100
FFFF:FFFF

Segmento C000

Dir Física = Seg * 10h + desplazamiento
0000:0000

Programación en Ensamblador Ing. Marcelo Tosini - 2001

Juego de registros
14 registros de 16 bits • 4 generales: AX, BX, CX, DX • 2 índices: SI, DI • 2 punteros: SP, BP • 4 segmentos: DS, CS, ES, SS• 1 estado: Flag • 1 contador de programa: IP

Programación en Ensamblador Ing. Marcelo Tosini - 2001

Juego de registros
AH
generales

AX BX CX DX SI

AL BL CL DL

CS DS
segmentos

BH CH DH

SS ES

índices

DI SP
punteros

IP
control

flags

BP
Programación en Ensamblador Ing. Marcelo Tosini - 2001

Registro de flags
O D I T S Z A P C C : acarreo en la suma yarrastre en la resta P : paridad del dato (0, impar y 1, par) A : acarreo auxiliar. Indica el acarreo o arrastre entre los bits 3 y 4 Z : indicación de resultado igual a cero S : indicador de signo del resultado. 0, positivo y 1, negativo T : trampa. Habilita la característica de depuración del procesador I : habilitación de interrupciones de hardware D : selección de incremento o decremento en losíndices O : sobreflujo.
Programación en Ensamblador Ing. Marcelo Tosini - 2001

Modos de direccionamiento
7 modos de direccionamiento básicos Modo registro: el operando es un registro. Modo inmediato: el operando es una constante. Modo directo: el operando es una dirección efectiva (explícita). Modo registro indirecto: similar al anterior pero la dirección efectiva está contenida en unregistro (BX, BP, SI , DI). Modo relativo a base: la dirección efectiva se encuentra sumando un desplazamiento a BX o BP. Modo indexado directo: igual al anterior usando SI o DI. Modo indexado a base: combinación de los dos anteriores. La dirección efectiva se calcula como la suma de un registro base, un registro índice y, opcionalmente, un decalage o desplazamiento.
Programación en Ensamblador Ing.Marcelo Tosini - 2001

Modos de direccionamiento
Ejemplo de uso
Modo registro: Modo inmediato: Modo directo: add ax, bx add ax, 5 add ax, [100]

Modo registro indirecto: add ax, [bx] Modo relativo a base: add ax, [bp + 100]

Modo indexado directo: operaciones de cadena : movsb Modo indexado a base:
Programación en Ensamblador Ing. Marcelo Tosini - 2001

add ax, [bx + si + 100]

Modosde direccionamiento
En general: BASE Ninguno BX o BP BX o BP + + + INDICE Ninguno SI o DI SI o DI + + + DESPLAZAM Ninguno 8 bits 16 bits

Programación en Ensamblador Ing. Marcelo Tosini - 2001

Juego de instrucciones
• Cero operandos: trabajan sobre algún operando explícito, puede ser un registro o un flag CLC pone carry en 0

• Un operando: el único operando es fuente y destino de laoperación INC AX AX := AX + 1

• Dos operandos: el primer operando es destino de la operación entre los dos operandos ADD AX, BX AX := AX + BX

Programación en Ensamblador Ing. Marcelo Tosini - 2001

Grupos de instrucciones
• Transferencia de datos (14): movimiento de datos entre registros y/o memoria • Aritméticas (20):operaciones aritméticas de enteros • Manipulación de bits (10):...
tracking img