Vous êtes sur la page 1sur 27

Arquitectura

y modos de
direcciona-
miento
1/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano
MICROPROCESADORES
Modos de Arquitectura y modos de direccionamiento
direcciona-
miento

Cierre

Arquitectura
y modos de Conocimientos previos
direcciona-
miento
2/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador
Electrnica digital.
Direccionar
la memoria Manejo de memorias.
Modo Real
Modo
Protegido Arquitectura del microprocesador.
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Temas
direcciona-
miento
3/53

Torres Tello,
Julio 1 Introduccin
Introduccin

Arquitectura 2 Arquitectura del procesador


del
procesador

Direccionar 3 Direccionar la memoria


la memoria
Modo Real Modo Real
Modo
Protegido Modo Protegido
Modo Plano

Modos de
Modo Plano
direcciona-
miento

Cierre
4 Modos de direccionamiento

5 Cierre

Arquitectura
y modos de Objetivos
direcciona-
miento
4/53

Torres Tello,
Julio

Introduccin

Arquitectura
del Conocer las caractersticas bsicas de los primeros procesadores de la familia
procesador

Direccionar
x86.
la memoria
Modo Real
Conocer la arquitectura interna de los procesadores 8086 y 8088.
Modo
Protegido Conocer los conceptos relacionados al manejo de memoria y modos de
Modo Plano

Modos de direccionamiento en procesadores de la familia x86.


direcciona-
miento

Cierre
Arquitectura
y modos de Preguntas clave
direcciona-
miento
5/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador
Cules son los registros de los procesadores 8086 y 8088?
Direccionar
la memoria Cmo podemos usar estos registros para el manejo de la memoria?
Modo Real
Modo
Protegido Qu y cules son los modos de direccionamiento?
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Introduccin
direcciona-
miento
6/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador Los microprocesadores modernos de Intel son compatibles desde el 8086.
Direccionar Arquitectura: lo que podemos utilizar como programadores.
la memoria
Modo Real
Modo
Manejo de memoria: Cmo usar los registros para direccionar la memoria.
Protegido
Modo Plano Considerar el tamao de los registros y las lneas de direccin.
Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Arquitectura interna
direcciona-
miento
7/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Arquitectura interna
direcciona-
miento
8/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Registros internos 8086/8088
direcciona-
miento
9/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Registros internos
direcciona-
miento
10/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Registros internos x86
direcciona-
miento
11/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Registros internos 8086/8088
direcciona-
miento
12/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador
Antes de programar se necesita conocer los registros visibles de un procesador.
Direccionar
la memoria En el 8086 se puede acceder a registros de 8 o 16 bits, segn sus nombres.
Modo Real
Modo
Protegido Registros de propsito general y propsito especfico.
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Registros internos 8086/8088
direcciona-
miento
13/53

Torres Tello,
Julio

Introduccin

Arquitectura
AX (acumulador): Propsito especfico en ciertas instrucciones (
del
procesador
multiplicacin, divisin).
Direccionar BX (base): Generalmente usado para mantener el offset (desplazamiento) de
la memoria
Modo Real una direccin.
Modo
Protegido
Modo Plano
CX (contador): Contador en varias instrucciones.
Modos de
direcciona-
DX (datos): Contiene parte del resultado de operaciones como multiplicacin
miento o divisin.
Cierre

Arquitectura
y modos de Registros internos 8086/8088
direcciona-
miento
14/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador Registros para el direccionamiento de memoria:
Direccionar BP (puntero base): Apunta a una localidad de memoria.
la memoria
Modo Real
Modo
DI (ndice destino): Usado para cadenas.
Protegido
Modo Plano SI (ndice fuente): Usado para cadenas. instrucciones.
Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Registros internos 8086/8088
direcciona-
miento
15/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador
IP (puntero de instrucciones): Contador del programa.
Direccionar
la memoria SP (puntero de pila): Stack pointer.
Modo Real
Modo
Protegido FLAGS (banderas): Indica alguna condicin del microprocesador.
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Banderas x86
direcciona-
miento
16/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Banderas 8086/8088
direcciona-
miento
17/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Banderas 8086/8088
direcciona-
miento
18/53

Torres Tello,
Julio

Introduccin

Arquitectura
del C: Acarreo.
procesador

Direccionar
P: Paridad.
la memoria
Modo Real
A: Acarreo auxiliar.
Modo
Protegido Z: Cero.
Modo Plano

Modos de S: Signo.
direcciona-
miento

Cierre
Arquitectura
y modos de Banderas 8086/8088
direcciona-
miento
19/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador T: Trampa. Proceso de debug, interrumpe flujo de programa.
Direccionar I: Interrupcin.
la memoria
Modo Real
Modo
O: Desbordamiento.
Protegido
Modo Plano D: Direccin. Manejo de cadenas.
Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Registros de segmento
direcciona-
miento
20/53

Torres Tello,
Julio

Introduccin

Arquitectura Generan direcciones de memoria en combinacin con otros registros.


del
procesador Depende del esquema de direccionamiento de memoria.
Direccionar
la memoria CS: Cdigo.
Modo Real
Modo
Protegido
DS: Datos.
Modo Plano
ES: Extra.
Modos de
direcciona-
miento SS: Pila.
Cierre
Arquitectura
y modos de Operacin en modo real
direcciona-
miento
21/53

Torres Tello,
Julio

Introduccin

Arquitectura
del Es la manera en que se administra las localidades de memoria, en el 8086/8088.
procesador

Direccionar
Presente en procesadores modernos, excepto si trabajan en modo de 64 bits.
la memoria
Modo Real
Sirven para manejar el primer megabyte de memoria.
Modo
Protegido Permite la compatibilidad de software en procesadores ms recientes.
Modo Plano

Modos de Los procesadores que poseen modo real, inician su operacin en este.
direcciona-
miento

Cierre

Arquitectura
y modos de Segmentos y offsets
direcciona-
miento
22/53

Torres Tello,
Julio

Introduccin

Arquitectura La direccin del segmento se ubica dentro de uno de los registros de


del
procesador segmento.
Direccionar
la memoria La direccin inicial del segmento se consigue adjuntando 0H al contenido del
Modo Real
Modo
registro.
Protegido
Modo Plano Un segmento tiene 64 kbytes.
Modos de
direcciona- El offset o desplazamiento indica una nica localidad dentro del segmento.
miento

Cierre
Arquitectura
y modos de Segmentos y offsets
direcciona-
miento
23/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Segmentos y offsets
direcciona-
miento
24/53

Torres Tello,
Julio

Introduccin Algunos modos de direccionamiento combinan valores para obtener la direccin


Arquitectura de offset, en cuyo caso el resultado puede ser mayor a FFFFH.
del
procesador Complete la siguiente tabla:
Direccionar
la memoria Registro de segmento Direccin Inicial Direccin Final
Modo Real
Modo
Protegido
2000H
Modo Plano
2001H
Modos de
direcciona- 2100H
miento
AB00H
Cierre
1234H
Arquitectura
y modos de Segmentos y offsets
direcciona-
miento
25/53

Torres Tello,
Julio

Introduccin

Arquitectura
Complete la siguiente tabla:
del
procesador
Registro de segmento Direccin Inicial Direccin Final
Direccionar 2000H 20000H 2FFFFH
la memoria
Modo Real
2001H 20010H 3000FH
Modo
Protegido 2100H 21000H 30FFFH
Modo Plano

Modos de
AB00H AB000H BAFFFH
direcciona-
miento
1234H 12340H 2233FH
Cierre

Arquitectura
y modos de Combinaciones
direcciona-
miento
26/53

Torres Tello,
Julio

Introduccin

Arquitectura
No cualquier registro de segmento se puede combinar con cualquier registro de
del
procesador
offset.
Direccionar Por ejemplo, el registro CS encontrar su offset en IP.
la memoria
Modo Real Los segmentos de memoria (mximo 4 en un cierto momento) pueden llegar a
Modo
Protegido
Modo Plano
sobreponerse si no es necesario usar los 64 kB.
Modos de El cargador de programas (parte del SO) calcula y asigna los valores de los
direcciona-
miento registros de segmento.
Cierre
Arquitectura
y modos de Combinaciones
direcciona-
miento
27/53

Torres Tello,
Julio
Las combinaciones por defecto entre los registros de segmento y de offset, para el
Introduccin
modo real son:
Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Ejemplo
direcciona-
miento
28/53

Torres Tello,
Julio

Introduccin

Arquitectura
Complete la siguiente tabla:
del
procesador
Registro de segmento Direccin Inicial Direccin Final
Direccionar
SS: 0A28H
la memoria
Modo Real
DS: 0A0FH
Modo
Protegido CS: 090FH
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Sobreposicin de segmentos
direcciona-
miento
29/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Segmentos y offsets
direcciona-
miento
30/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
Este esquema permite la reasignacin de bloques de memoria sin tener que
procesador cambiar nada en el cdigo del programa.
Direccionar
la memoria El segmento de memoria puede moverse dentro del mapa de memoria sin
Modo Real
Modo modificar el offset.
Protegido
Modo Plano
Esto permite la portabilidad del programa de una mquina a otra sin que sea
Modos de
direcciona- necesario modificar el cdigo.
miento

Cierre
Arquitectura
y modos de Introduccin
direcciona-
miento
31/53

Torres Tello,
Julio

Introduccin

Arquitectura Presente desde el 80286.


del
procesador
Se usan registros de segmento y offset, pero con otra finalidad. Las
Direccionar
la memoria instrucciones son idnticas.
Modo Real
Modo El registro de segmento ahora contiene un selector, que selecciona un
Protegido
Modo Plano descriptor de una tabla de descriptores (ubicada en la RAM).
Modos de
direcciona- Desde el 80386, el offset puede ser un valor de 32 bits.
miento

Cierre

Arquitectura
y modos de Selectores y descriptores
direcciona-
miento
32/53

Torres Tello,
Julio

Introduccin

Arquitectura El selector escoge un descriptor de 8192 (213 ) posibles, de una de dos tablas.
del
procesador
El descriptor proporciona informacin de la longitud, ubicacin y derechos de
Direccionar
la memoria acceso de un segmento de memoria.
Modo Real
Modo Existen dos tablas de descriptores: Global (para todos los programas) y local
Protegido
Modo Plano (para una nica aplicacin).
Modos de
direcciona- Existe una compatibilidad en cuanto a descriptores desde el 80286.
miento

Cierre
Arquitectura
y modos de Descriptor del 80286
direcciona-
miento
33/53

Torres Tello,
Julio El 80286 tiene 24 lneas de direccin.
Introduccin Los segmentos pueden empezar en cualquier direccin (a diferencia del modo
Arquitectura real).
del
procesador
Se manejan segmentos de 64 kB.
Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Byte de derechos de acceso
direcciona-
miento
34/53
DPL da el nivel de privilegios del segmento. 00 es el m alto.
Torres Tello,
Julio
til en sistemas multiusuario.

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Registro de segmento
direcciona-
miento
35/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Ejemplo de utilizacin
direcciona-
miento
36/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Modo Plano
direcciona-
miento
37/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador Usado en procesadores que trabajan con palabras de 64 bits.
Direccionar No existe segmentacin.
la memoria
Modo Real
Modo
El valor del offset es la direccin fsica.
Protegido
Modo Plano Si el procesador trabaja en 64 bits, no est disponible el modo real.
Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Introduccin
direcciona-
miento
38/53

Torres Tello,
Julio

Introduccin
Son las diferentes maneras de especificar un operando dentro de una
Arquitectura
del instruccin en lenguaje ensamblador.
procesador
Especifica la forma de calcular la direccin de memoria efectiva de un operando
Direccionar
la memoria mediante el uso de la informacin contenida en registros y/o constantes.
Modo Real
Modo
Protegido Necesario su conocimiento para una adecuada programacin en lenguaje
Modo Plano
ensamblador.
Modos de
direcciona-
miento
Se usa la instruccin MOV para describir los diferentes modos de
Cierre direccionamiento.
Arquitectura
y modos de Direccionamiento de registro
direcciona-
miento
39/53

Torres Tello,
Julio

Introduccin
MOV CX, DX
Arquitectura
del
procesador

Direccionar
Copia el contenido de DX en CX.
la memoria
Modo Real
El ms comn de los modos de direccionamiento.
Modo
Protegido
Modo Plano
Se debe tener en cuenta el tamao de los registros.
Modos de No se puede usar dos registros de segmento como operando de origen y destino
direcciona-
miento al mismo tiempo.
Cierre
CS no puede ser operando de destino.

Arquitectura
y modos de Direccionamiento inmediato
direcciona-
miento
40/53

Torres Tello,
Julio

Introduccin

Arquitectura
del MOV AL, 22H
procesador

Direccionar
la memoria Un valor inmediato es una constante.
Modo Real
Modo
Protegido Copia el nmero 22H en AL.
Modo Plano

Modos de Se debe tener en cuenta el tamao de los registros, y las reglas para escribir los
direcciona-
miento nmeros.
Cierre
Arquitectura
y modos de Direccionamiento directo
direcciona-
miento
41/53

Torres Tello,
Julio

Introduccin MOV AL, [1234H]


Arquitectura MOV DI, [10H] --> MOV BYTE PTR DI, [10H]
del
procesador

Direccionar
la memoria 1234H representa el valor del offset.
Modo Real
Modo Copia el contenido de la localidad con desplazamiento 1234H a AL.
Protegido
Modo Plano
Aplican las reglas de combinacin de registro y offset.
Modos de
direcciona-
miento
Puede ser una operacin de 8 o 16 bits.
Cierre En el segundo caso es necesario especificar el tamao del dato a copiar, con
BYTE PTR o WORD PTR.

Arquitectura
y modos de Direccionamiento indirecto de registro
direcciona-
miento
42/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
MOV AX, [BX]
procesador

Direccionar
la memoria El contenido de BX representa el offset.
Modo Real
Modo
Protegido Aplican las reglas de combinacin de registro y offset.
Modo Plano

Modos de
Puede ser una operacin de 8 o 16 bits.
direcciona-
miento til para el manejo de tablas.
Cierre
Arquitectura
y modos de Direccionamiento indirecto de registro
direcciona-
miento
43/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Direccionamiento base + ndice
direcciona-
miento
44/53

Torres Tello,
Julio

Introduccin

Arquitectura
del MOV [BX + DI], CL
procesador

Direccionar
la memoria Similar al caso anterior.
Modo Real
Modo
Protegido Se combina un registro base (BX o BP) y un ndice (SI o DI).
Modo Plano

Modos de til para el manejo de arreglos. El registro base generalmente contiene la


direcciona-
miento direccin inicial del arreglo y el ndice indica el elemento dentro del arreglo.
Cierre
Arquitectura
y modos de Direccionamiento base + ndice
direcciona-
miento
45/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Direccionamiento relativo de registro
direcciona-
miento
46/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador MOV AX, [BX + 4]
Direccionar
la memoria
Modo Real
Modo Es una combinacin de los casos anteriores.
Protegido
Modo Plano
En este caso el valor inmediato es un nmero de 16 bits con signo.
Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Direccionamiento relativo de registro
direcciona-
miento
47/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Direccionamiento de base relativa + ndice
direcciona-
miento
48/53

Torres Tello,
Julio

Introduccin

Arquitectura
del MOV AX, [BX + DI + 4]
procesador

Direccionar
la memoria
Modo Real Combinacin de varios casos anteriores.
Modo
Protegido
Modo Plano El ms complicado y menos usado.
Modos de
direcciona-
til para el manejo de arreglos bidimensionales.
miento

Cierre
Arquitectura
y modos de Direccionamiento de base relativa + ndice
direcciona-
miento
49/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Utilizacin
direcciona-
miento
50/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Arquitectura
y modos de Conclusiones
direcciona-
miento
51/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador Se ha logrado conocer las caractersticas internas bsicas de los primeros
Direccionar
la memoria
procesadores de la familia x86.
Modo Real
Modo
Se ha podido comprender la manera en que un microprocesador administra la
Protegido
Modo Plano memoria del sistema, y como el programador debe manejar estos conceptos.
Modos de
direcciona-
miento

Cierre

Arquitectura
y modos de Bibliografa
direcciona-
miento
52/53

Torres Tello,
Julio

Introduccin

Arquitectura
del Barry B. Brey.
procesador
The Intel Microprocessors.
Direccionar
la memoria Pearson Education, November 2011.
Modo Real
Modo
Protegido
Sreenivas et al.
Modo Plano
8086 Microprocessors & Peripherals.
Modos de
direcciona- VTU Learning.
miento

Cierre
Arquitectura
y modos de Gracias!
direcciona-
miento
53/53

Torres Tello,
Julio

Introduccin

Arquitectura
del
procesador

Direccionar
la memoria
Modo Real
Modo
Protegido
Modo Plano

Modos de
direcciona-
miento

Cierre
Muchas gracias por su atencin!