Your SlideShare is downloading. ×
Modos de Direccionamiento
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Modos de Direccionamiento

2,019
views

Published on

Modos de Direccionamiento utilizados por el CPU.

Modos de Direccionamiento utilizados por el CPU.

Published in: Technology

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,019
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
99
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Estructura y Tecnología de Computadores I Modos de direccionamiento -1-MODOS DE DIRECCIONAMIENTO1. Introducción2. Direccionamiento inmediato3. Direccionamiento directo4. Direccionamiento relativo a registro5. Direccionamiento indexado6. Direccionamiento indirecto7. Combinaciones de modos básicos de direccionamiento8. Modos de direccionamiento del microprocesador M680009. Direccionamiento paginado y direccionamiento segmentado1. INTRODUCCIÓN- Modo de direccionamiento: mecanismo que permite conocer la ubicación de un dato oinstrucción.- Objeto: dato o instrucción que se desea direccionar.- Un computador dispone de varios modos de direccionamiento.- Objetivos de los modos de direccionamiento: • Reducir el espacio ocupado en memoria por las instrucciones. • Permitir la reubicación del código. • Facilitar el manejo de las estructuras de datos.Modos de direccionamiento en las instrucciones- Los operandos y resultado de una instrucción son accedidos a través de modos dedireccionamiento.- Cada campo de operando o resultado en una instrucción contiene información acercadel modo de direccionamiento empleado para acceder a él. • Código de operación (CO) y modificador (MD) • Operandos (OPi) y resultado (RES) CO MD OP1 OP2 RES- Cada campo de operandos o resultado tendrá los siguientes subcampos: Mdir CR CD • Mdir: especificador del modo de direccionamiento (ocupa pocos bits). • CR: campo especificador del registro involucrado en el modo de direccionamiento (ocupa pocos bits). • CD: campo que puede contener un operando inmediato, una dirección o un desplazamiento (suele ocupar bastante espacio).
  • 2. Estructura y Tecnología de Computadores I Modos de direccionamiento -2-2. DIRECCIONAMIENTO INMEDIATO- La instrucción contiene al propio objeto.- Se emplea cuando la instrucción contiene un valor constante.- El tamaño del operando viene determinado por el espacio reservado para él en elformato de instrucción.- Subcampos del campo de operando Mdir CD (operando inmediato)- Esquema de funcionamiento- Ejemplo M68000: MOVE.B #5,D0
  • 3. Estructura y Tecnología de Computadores I Modos de direccionamiento -3-3. DIRECCIONAMIENTO DIRECTODireccionamiento mediante registro- El operando se encuentra contenido en un registro.- Subcampos del campo de operando Mdir CR- Esquema de funcionamiento- Ejemplos M68000: MOVE.B #5,D0 MOVE.W #$23A0,A3
  • 4. Estructura y Tecnología de Computadores I Modos de direccionamiento -4-Direccionamiento directo absoluto- La instrucción contiene la dirección de memoria exacta donde se encuentra eloperando.- El operando se encuentra en memoria.- Subcampos del campo de operando Mdir CD (dirección) • El rango de CD debe ser capaz de direccionar toda la memoria. • Si no es capaz: direccionamiento de página base.- Esquema de funcionamiento- Ejemplo M68000: MOVE.B D0,$A61350
  • 5. Estructura y Tecnología de Computadores I Modos de direccionamiento -5-4. DIRECCIONAMIENTO RELATIVO A REGISTRO- El operando se encuentra en memoria.- La dirección del objeto ha de ser calculada a partir de la suma del contenido de uncierto registro (que funciona como un puntero) y un desplazamiento (contenido en lainstrucción).- Subcampos del campo de operando Mdir CR CD (desplazamiento)Direccionamiento relativo a registro base- Se emplea como puntero un registro base, que puede ser un registro específico o unocualquiera de los del banco.- El registro base utilizado se indica en el subcampo CR.- Esquema de funcionamiento- Ejemplo M68000: MOVE.W 5(A0),D1
  • 6. Estructura y Tecnología de Computadores I Modos de direccionamiento -6-Direccionamiento relativo a contador de programa- Como puntero se emplea el contador de programa.- Este direccionamiento se emplea para acceder a instrucciones (saltos relativos obucles) o para referenciar datos cercanos al código.- No es preciso introducir el subcampo CR.- Esquema de funcionamiento- Ejemplo M68000: MOVE.L 24(PC),D0Direccionamiento relativo a puntero de pila- Pila: estructura de tipo LIFO marcada por • el fondo de la pila • el puntero de pila (*SP), registro que apunta a la última posición ocupada de la pila- Como puntero del direccionamiento se emplea el puntero de pila.- No es preciso incluir el subcampo CR, y a veces no lleva CD.- Ejemplo M68000: MOVE.B D0,24(SP) MOVE.B D0,24(A7)
  • 7. Estructura y Tecnología de Computadores I Modos de direccionamiento -7-5. DIRECCIONAMIENTO INDEXADO- Similar al direccionamiento relativo a registro base. • El operando se encuentra en memoria. • Registro índice: se modifica a menudo en la ejecución del programa.- Subcampos del campo de operando Mdir CR CD (desplazamiento)- El registro índice puede permitir incrementos o decrementos antes o después deobtenerse la dirección del objeto: • Preincremento • Predecremento • Posincremento • Posdecremento- El incremento o decremento puede depender del tamaño del objeto referenciado.- Ejemplos M68000 (sólo predecremento y posincremento): MOVE.B D0,(A0)+ incrementa A0 en 1 MOVE.W D0,-(A2) decrementa A2 en 2 MOVE.L (A5)+,D3 incrementa A5 en 4- Utilizado para recorrer tablas o vectores.6. DIRECCIONAMIENTO INDIRECTO- El operando se encuentra en memoria.- La instrucción contiene una dirección que se emplea para leer en memoria unadirección intermedia que será la verdadera dirección del objeto buscado.- Subcampos del campo de operando Mdir CD (dirección indirecta)- Esquema de funcionamiento
  • 8. Estructura y Tecnología de Computadores I Modos de direccionamiento -8-7. COMBINACIONES DE MODOS BÁSICOS DE DIRECCIONAMIENTODireccionamiento indirecto a registro- Es similar al direccionamiento indirecto, pero la dirección intermedia está contenida enun registro, no en una posición de memoria.- La instrucción contendrá la referencia al registro.- Subcampos del campo de operando Mdir CR- Coincide con el direccionamiento relativo a registro base sin usar desplazamiento.- Ejemplo M68000: MOVE.L D0,(A4)Combinación de modos indirecto e indexado- Subcampos del campo de operando Mdir CR CD (dirección indirecta)- Preindexado: El contenido del registro índice se suma al de la dirección indirecta en elprimer paso de la indirección.
  • 9. Estructura y Tecnología de Computadores I Modos de direccionamiento -9-- Posindexado: el contenido del registro índice se suma a la dirección intermedia en elsegundo paso de la indirección.- Puede haber preincremento o predecremento (total: 8 posibilidades).Direccionamiento relativo a registro con índice y desplazamiento- La dirección del objeto se obtiene sumando el contenido de un registro base, unregistro índice y un desplazamiento.- Subcampos del campo de operando Mdir CR1 CR2 CD (desplazamiento)- Ejemplo M68000: MOVE.L D0,12(A0,D2)
  • 10. Estructura y Tecnología de Computadores I Modos de direccionamiento -10-8. MODOS DE DIRECCIONAMIENTO DEL MICROPROCESADOR M68000- Inmediato (sólo operandos fuente): MOVE.B #$48,D3- Mediante registro • De datos: MOVE.B #$48,D3 • De direcciones: MOVE.W #$4AE8,A5- Absoluto directo: MOVE.W D2,$4AB12F0- Relativo a registro de direcciones (indirecto a registro): MOVE.L $345A0A5F,(A6)- Relativo a registro de direcciones con desplazamiento: MOVE.L $345A0A5F,3(A6)- Relativo a registro de direcciones con desplazamiento e índice: MOVE.L $345A0A5F,4(A1,A2) MOVE.L $345A0A5F,4(A4,D7)- Relativo a registro de direcciones con predecremento: MOVE.W D0,-(A7)- Relativo a registro de direcciones con posincremento: MOVE.W D0,(A7)+- Relativo a contador de programa con desplazamiento (sólo operando fuente): MOVE.L 4(PC),$345A0A5F- Relativo a contador de programa con desplazamiento e índice (sólo operando fuente): MOVE.L 4(PC,A2),$345A0A5F MOVE.L 4(PC,D7),$345A0A5F
  • 11. Estructura y Tecnología de Computadores I Modos de direccionamiento -11-9. DIRECCIONAMIENTO PAGINADO Y DIRECCIONAMIENTOSEGMENTADODireccionamiento paginado- La memoria se encuentra dividida en páginas (bloques de igual longitud).- Las direcciones se componen de dos partes: • Indicador de página (IP): en un registro específico o de propósito general de la máquina. • Dirección de palabra (DP): en el campo CD de la instrucción.- Concatenando IP y DP se obtiene la dirección completa.- Esquema de funcionamientoDireccionamiento segmentado- La memoria se divide en porciones de tamaño variable llamadas segmentos.- Tabla de segmentos: contiene la dirección del comienzo y del final de cada segmentoen memoria.- Problemas: fraccionamiento de memoria.- Ventajas: se pueden definir segmentos de tamaño arbitrario.