modos de direccionamiento!!

Post on 25-Jul-2015

299 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Romo Reyes Ramón Iván

El 8086 ofrece una multitud de vías para direccionar la información: registro a registro, direccionamiento inmediato, direccionamiento directo y varios tipos diferentes de direccionamiento indirecto.

Es aquel en el cual la operación se lleva a cabo entre los contenidos de dos registros. Por ejemplo, la instrucción

MOV AX,BX indica que el contenido del registro BX

sea copiado en el registro AX.

MOV Rn,A Carga en el registro Rn el contenido del

acumulador: Rn <--- (A). Este direccionamiento ocupa muy poca memoria de programa y permite acceder de manera rápida a los datos más frecuentemente utilizados.

En este modo de direccionamiento, uno de los operandos está presente en el o los bytes siguientes al código de operación. Por ejemplo, la instrucción

ADD AX,3064h indica que el número 3064h sea sumado al

contenido del registro AX y el resultado almacenado en dicho registro.

MOV A,#255 Carga en el acumulador el número decimal

255.

MOV DPTR,#36CAH Carga en el registro DPTR el valor 36CAH. 

EL 8086 implementa el direccionamiento directo a memoria, sumando un desplazamiento de 16 bits, indicado por los dos bytes que siguen al código de operación, al contenido del registro de segmento de datos. La suma es pues, la posición de memoria direccionada.

MOV AH,TABLA señala que el contenido de la posición de

memoria cuya dirección está indicada por el identificador TABLA, sea copiado en el registro AH.

ADD A,3BH esta instrucción suma (ADD) al contenido

del acumulador el contenido de la posición de memoria 3BH: A <--- (A) + ([3B]). 

El modo de direccionamiento indirecto es el más difícil de comprender, pero también el más poderoso. Existen cuatro métodos de direccionamiento indirecto: indirecto a registro, relativo a base, indexado e indexado a base.

En el modo de direccionamiento indirecto a registro, la dirección de memoria donde se encuentra uno de los operandos es indicada a través del contenido de los registros BX, BP, SI o DI. La instrucción

mov AX,[DI] establece que el contenido de la palabra de

memoria cuya dirección está indicada por el contenido del registro DI, sea copiado en el registro AX.

El direccionamiento a la memoria de datos, relativo a base simplemente usa el contenido del registro BX o BP como base para la posición efectiva de memoria. La instrucción

MOV CL,[BP]+DESP copia el contenido de la posición de

memoria cuya dirección está determinada por la suma del contenido de BP y DESP, en el registro CL.

El direccionamiento indexado directo está permitido especificando los registros SI o DI como índices. Empleando este modo de direccionamiento es posible acceder a los elementos de un vector. La instrucción

sub AH,MATRIZ[SI] resta del contenido del registro AH, el valor

contenido en la posición de memoria especificada por la suma del desplazamiento indicado por el identificador MATRIZ y el contenido del registro SI.

Resulta de la combinación de los modos de direccionamiento Relativo a Base e Indexado Directo. La instrucción

mov DH,VECTOR[BX][DI]señala que el contenido de la posición de memoria cuya dirección viene indicada por la suma de los contenidos de los registros BX y DX y del desplazamiento establecido por el identificador VECTOR, sea copiado en DH.

top related