11
ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

Embed Size (px)

Citation preview

Page 1: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

ARQUITECTURA INTEL

Modos de direccionamiento

Organización de Computadores

Page 2: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

Hay 7 modos básicos:

•Modo registro: el operando es un registro.

•Modo inmediato: el operando es una constante.

•Modo directo: el operando es una directiva efectiva (explícita).

•Modo registro indirecto: similar al anterior pero la dirección efectiva está contenida en un registro (BX,BP,SI,DI)

•Modo relativo a base: la dirección efectiva se encuentra sumando un desplazamiento a BX o BP.

Page 3: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

• Modo relativo a base: la dirección efectiva se encuentra sumando un desplazamiento a BX o BP.

• Modo indexado directo: igual al anterior usando SI o DI.

• Modo indexado a base: combinación de los dos anteriores. La dirección efectiva se calcula como la suma de un registro base, un registro índice y, opcionalmente, un desplazamiento.

Page 4: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

Ejemplo de uso:

•Modo registro: add ax, bx

•Modo inmediato: add ax,5

•Modo directo: add ax,[100]

•Modo registro indirecto: add ax, [bx]

•Modo relativo a base: add ax, [bp+100]

•Modo indexado directo: operaciones de cadena: movsb

•Modo indexado a base: add ax, [bx +s i + 100]

Page 5: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

Los modos de direccionamiento del 8086 (Crawford & Gelsinger, 1987) son muy irregulares.

Recordando la codificación de los operandos de esta máquina:

Vemos que hay un campo para un registro (reg), que especifica uno de los operandos, y otros dos campos (mod y r/m) para el otro.

mod reg r/m

Page 6: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

Combinaciones posibles de los valores de estos campos del i-8086:

Page 7: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

Los modos de direccionamiento de esta máquina no son en absoluto ortogonales, se quiere decir con esto que no se pueden aplicar todos los modos sobre todos los registros.

No existe el modo inmediato sino códigos de operación específicos para permitir el direccionamiento inmediato.

Los modos autoindexados no están soportados por esta máquina.

Page 8: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTO

Como se desprende de la tabla, la mayoría de los modos son indirectos por registro, indexados o directos por registro; en este caso (mod=11), existen dos posibilidades en función del tamaño del operando.

Page 9: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTOEN EL 80386

En modo real es completamente compatible con el 8086, pero cuando trabaja en modo protegido, es decir, con segmentos de 32 bits, es mucho más regular en la codificación de los direccionamientos.

Existe un modo nuevo que requiere un byte adicional denominado SIB (escala, índice, base) que se añade al byte de operandos y cuyo formato es:

S I B

Page 10: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

Ese byte adicional especifica un factor de escala y dos registros (base e índice).

Para calcular la dirección con este modo se multiplica el contenido del registro índice por el factor de escala (que puede ser 1, 2, 4 u 8), se le suma el registro base y en algunas ocasiones un desplazamiento de 8 o 32 bits.

El modo SIB es útil para direccionar elementos de vectores de longitudes diferentes en bucles. Es una alternativa a los modos autoindexados que esta máquina no soporta.

MODOS DE DIRECCIONAMIENTOEN EL 80386

Page 11: ARQUITECTURA INTEL Modos de direccionamiento Organización de Computadores

MODOS DE DIRECCIONAMIENTOEN EL 80386

Combinaciones posibles de los valores de estos campos del i-80386: