1. Direccionamiento
Nombre:
Juan Eduardo Suarez Mota
Ernesto David García Martínez
Samuel Cuevas Villegas
Juan Carlos Gómez Ramos
Materia:Arquitectura de computadoras
Maestro(a): Leticia Velarde Peña
Carrera: Ing. Sistemas Computacionales
5-AT/M
2. Modo de direccionamiento: mecanismo que permite conocer la ubicación de un
dato o Instrucció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.
Para especificar algunos modos de direccionamiento usaremos la siguiente
notación:
A = Especificación de una dirección de memoria (Address).
R = Especificación de un registro (Register).
EA = Dirección real del operando en memoria (Effective address).
(X) = Contenido de la posición de memoria X o del registro X.
Direccionamiento Implícito.
En este modo de direccionamiento no es necesario poner ninguna dirección de
forma explícita, ya que en el propio código de operación se conoce la dirección del
(de los) operando(s) al (a los) que se desea acceder o con el (los) que se quiere
operar.
3. Direccionamiento inmediato.
En este modo es el operando el que figura en la instrucción no su dirección. En
otras palabras el campo de operando contiene el mismo, sin transformación
alguna, la información sobre la que hay que operar. Este modo es útil para
inicializar registros o palabras de memoria con un valor constante.
El operando está en la propia instrucción.
Ejemplo: add r4, #5 equivale a r4 = r4 + 5
Número en complemento a 2, se hace extensión del signo al cargarlo en un
registro.
Ventaja: una vez captada la instrucción, no se necesitan más referencias a
memoria.
Desventaja: pocos bits para codificar el dato.
4. Direccionamiento directo.
El campo de dirección contiene la dirección efectiva del operando.
En este modo la dirección efectiva es igual a la parte de dirección de la
instrucción. El operando reside en la memoria y su dirección es dada directamente
por el campo de dirección de la instrucción. En una instrucción de tipo ramificación
el campo de dirección especifica la dirección de la rama actual.
Con este tipo de direccionamiento, la dirección efectiva es contenida en la misma
instrucción, tal como los valores de datos inmediatos que son contenidos en la
instrucción. Un procesador de 16 bits suma la dirección efectiva al contenido del
segmento de datos previamente desplazado en 4 bits para producir la dirección
física del operando.
EA = A
Muy sencillo, usada en las primeras computadoras.
Desventaja: limitación del rango de direcciones por el tamaño del campo.
5. Direccionamiento indirecto.
El operando se encuentra en memoria.
- La instrucción contiene una dirección que se emplea para leer en memoria una
dirección intermedia que será la verdadera dirección del objeto buscado.
- Subcampos del campo de operando.
- Esquema de funcionamiento.
EA = (R)
Supera la limitación del nº de bits para especificar la dirección y un solo acceso a
memoria para obtener el operando.
Por ejemplo existe el direccionamiento indirecto por registro, en el que el registro
especificado contiene la dirección del operando, no el operando mismo.
Este direccionamiento es útil cuando se trabaja con apuntadores ya que los
apuntadores son variables que contienen las direcciones, no solo operandos
mismos.
6. Direccionamiento por registro.
El campo de dirección especifica un registro donde está el operando.
OPERANDO = (R)
n bits del campo de dirección necesarios para referenciar 2n registros
Ventajas: campo de direcciones pequeño y no hay accesos a memoria.
Desventaja: espacio de posiciones limitado.
7. Direccionamiento indirecto por registro.
El campo de operando de la instrucción contiene un identificador de registro en el
que se encuentra la dirección efectiva del operando. En este modo el campo de la
dirección de la instrucción da la dirección en donde la dirección efectiva se
almacena en la memoria. El control localiza la instrucción de la memoria y utiliza
su parte de dirección para accesar la memoria de nuevo para leer una dirección
efectiva. Unos pocos modos de direccionamiento requieren que el campo de
dirección de la instrucción sea sumado al control de un registro especificado en el
procesador. La dirección efectiva en este modo se obtiene del siguiente cálculo:
Dir. Efectiva = Dir. De la parte de la instrucción + Contenido del registro del
procesador