Está en la página 1de 6

UNIDAD I: INTRODUCCION AL LENGUAJE ENSAMBLADOR

INSTITUTO TECNOLOGICO DE
ACAPULCO

LENGUAJES DE INTERFAZ
PROF.: ING. DAGOBERTO URZUA OSORIO

08:00 - 09:00 HRS.

ERICK JERZAIN CARRILLO CALLEJA 1320154


UNIDAD I: INTRODUCCION AL LENGUAJE ENSAMBLADOR

AGOSTO - DICIEMBRE 2014

1.6 Modos De Direccionamiento.

Los llamados modos de direccionamiento son las diferentes maneras de


especificar en informática un operando dentro de una instrucción en
lenguaje ensamblador.

Un modo de direccionamiento especifica la forma de calcular la dirección


de memoria efectiva de un operando mediante el uso de la información
contenida en registros y / o constantes, contenida dentro de una
instrucción de la máquina o en otra parte.

Las operaciones se hacen entre registros o registros y memoria, pero


nunca entre memoria y memoria (salvo algunas operaciones con cadenas
de caracteres). Los modos de direccionamiento determinan el lugar en que
reside un operando, un resultado o la siguiente instrucción a ejecutar
según el caso.

Tenga en cuenta que no existe una forma generalmente aceptada de


nombrar a los distintos modos de direccionamiento. En particular, los
distintos autores y fabricantes de equipos pueden dar nombres diferentes
para el modo de hacer frente al mismo, o los mismos nombres, a los
diferentes modos de direccionamiento

Direccionamiento Inmediato.

En este modo el operando es especificado en la instrucción misma. En


otras palabras, una instrucción de modo inmediato tiene un campo de
operando en vez de un campo de dirección. El campo del operando
contiene el operando actual que se debe utilizar en conjunto con la
operación especificada en la instrucción. Las instrucciones de modo
inmediato son útiles para inicializar los registros en un valor constante.
Cuando el campo de dirección especifica un registro del procesador, la
instrucción se dice que está en el modo de registro.
UNIDAD I: INTRODUCCION AL LENGUAJE ENSAMBLADOR

Direccionamiento Directo.

Es directo cuando la instrucción contiene el lugar donde se encuentra el


operando. Según el lugar donde se encuentra el operando puede ser:
• Direccionamiento directo a registro. • Direccionamiento directo a
memoria
• Dirección completa (p. ej. Z80 sobre 64 Kb con 16 bits)
• Dirección sobre una página del mapa de memoria; también se conoce
como direccionamiento de página base.

Direccionamiento Relativo.

La instrucción indica el desplazamiento del operando con respecto a un


puntero:
La dirección efectiva es calculada por la unidad de control sumando, o
restando, el desplazamiento al puntero de referencia que suele estar en un
registro. Dependiendo del puntero se tienen diferentes modos de
direccionamiento. Dirección efectiva = Reg. Referencia + desplazamiento.
Modo de direccionamiento / Registro de referencia / Cálculo dirección
efectiva:

 Relativo a contador de programa Contador de programa (CP) DE = CP +


desplazamiento.
 Relativo a registro base Un registro base (R B) DE = RB + desplazamiento.
 Relativo a registro índice Un registro índice (R I) DE = RI +
desplazamiento.
UNIDAD I: INTRODUCCION AL LENGUAJE ENSAMBLADOR

 Relativo a pila Registro de pila (SP) DE = SP + desplazamiento.

Ventajas

 Las instrucciones son más compactas.


 El código puede cambiar de lugar en el mapa de memoria con cambiar
el valor del puntero.
 Gran facilidad de manejo de estructuras de datos.

Inconvenientes
 Se requiere una operación adicional para el cálculo de la dirección del
operando.

Direccionamiento Indirecto.

La posición indicada por la instrucción no es el operando sino la dirección


de memoria en la que se encuentra, por lo que se necesita un acceso
adicional a memoria.

La dirección de memoria se puede dar mediante:

 Direccionamiento directo a memoria


 Direccionamiento relativo
 Es posible que se realicen múltiples niveles de indirección.
 Su utilidad más común es la de acceso a diversas informaciones
mediante
UNIDAD I: INTRODUCCION AL LENGUAJE ENSAMBLADOR

tablas de punteros.

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. Requiere que el programador conozca
con que operandos se está trabajando.

Direccionamiento de Registro.
Sirve para especificar operandos que están en registros.

Direccionamiento Indirecto por Registro.


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 acceder a
la memoria
UNIDAD I: INTRODUCCION AL LENGUAJE ENSAMBLADOR

BIBLIOGRAFIA

Peter Abel.
Lenguaje Ensamblador y Programación para PC IBM y compatibles.
Editorial Prentice Hall, 3ª edición [1996].

También podría gustarte