La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

MODOS DE DIRECCIONAMIENTO

Presentaciones similares


Presentación del tema: "MODOS DE DIRECCIONAMIENTO"— Transcripción de la presentación:

1 MODOS DE DIRECCIONAMIENTO
Tiene 12 modos de direccionamiento básicos. Estos pueden clasificarse en 5 grupos: 1. Direccionamientos accesando dato inmediato y registro de datos (modos inmediato y de registro). 2. Direccionamiento accesando datos en memoria (modo memoria) 3. Direccionamiento accesando puertos E/S. (modo E/S) 4. Direccionamiento relativo 5. Direccionamiento implícito.

2 1. DIRECCIONAMIENTO ACCESANDO DATO Y REGISTRO INMEDIATO
1.1 Direccionamiento de registro. Especifica el operando fuente y el operando destino. Los registros deben ser del mismo tamaño. ej. MOV DX, CX DX <- CX MOV CL, DL CL <- DL ADD AL, BL AL <- AL + BL 1.2 Direccionamiento inmediato. Un dato de 8 o 16 bits se especifica como parte de la instrucción. p.ej. MOV CL, 03H CL <-03H Aquí el operando fuente está en modo inmediato y el destino en modo registro.

3 2. DIRECCIONAMIENTO ACCESANDO DATOS EN MEMORIA
2.1 Direccionamiento directo. La dirección efectiva (EA) de 16 bits se toma directamente del campo de desplazamiento de la instrucción. El desplazamiento se coloca en la localidad siguiente al código de operación. Esta EA o desplazamiento es la distancia de la localidad de memoria al valor actual en el segmento de datos (DS) en el cual el dato está colocado. Ej. MOV CX, START CX <- (DS:START) START puede definirse como una localidad de memoria usando las pseudoinstrucciones DB o DW. 2.2 Direccionamiento de registro indirecto. La dirección efectiva EA está especificada en un registro apuntador o un registro índice. El apuntador puede ser el registro base BX o el apuntador base BP; el registro índice puede ser el Indice Fuente (SI) o el Indice Destino (DI). Ej. MOV (DI),BX (ES:DI) <- BX

4 2.3 Direccionamiento base
EA se obtiene sumando un desplazamiento (8 bits con signo o 16 bits sin signo) a los contenidos de BX o BP. Los segmentos usados son DS y SS. Cuando la memoria es accesada, la dirección física de 20 bits es calculada de BX y DS, por otra parte, cuando la pila es Accesada, la dirección es calculada de BP y SS. Ej. MOV BL, (BP+8) BL <- (SS:BP+8) MOV AL, (BX).START AL <- (DS:BX+START) El operando fuente está en modo base, y la EA se obtiene sumando los valores de START y BX. 2.4 Direccionamiento indexado. EA se calcula sumando un desplazamiento (8 o 16 bits) a los contenidos de SI o DI. Ej. MOV BH,START (SI) BH <- (DS:SI+START) 2.5 Direccionamento base indexado. EA se calcula sumando un registro base (BX o BP), un registro índice (DI o SI), y un desplazamiento (8 o 16 bits). Ej. MOV ALPHA (SI)(BX),CL DS:SI+BX+ALPHA <- CL Este direccionamiento proporciona una forma conveniente para direccionar un arreglo localizado en la memoria

5 2.6 Direccionamiento (cadena?)
Este modo usa registros índice. La cadena de instrucciones automáticamente asume que SI apunta al primer byte o palabra del operando destino. Los contenidos de SI y DI son incrementados automáticamente (poniendo a 0 DF mediante la instrucción CLD) o decrementados (poniendo a 1 DF mediante la instrucción STD) para apuntar al siguiente byte o palabra. El segmento del operando fuente es DS y el segmento del operando destino debe ser ES MOVSB ES:DI <- DS:SI SI Y DI ++ SI DF=0 o SI Y DI -- SI DF=1

6 3. DIRECCIONAMIENTO ACCESANDO PUERTOS (E/S)
Hay dos tipos de direccionamiento usando puertos: directo e indirecto. En el modo directo, el número de puerto es el operando inmediato de 8 bits, lo cual permite accesar puertos numerados del 0 al 255. Ej. OUT 05H,AL PUERTO 05H<- AL En el modo indirecto, el número de puerto se toma de DX, permitiendo así 64K puertos de 8 bits o 32K puertos de 16 bits. IN AX, DX AX <- PUERTO (DX) Las transferencias E/S de 8 y 16 bits deben hacerse vía AX y AL, respectivamente. 4. DIRECCIONAMIENTO RELATIVO. En este modo el operando se especifica como un desplazamiento de 8 bits con signo, relativo al IP. Ej. JNC START. Si C=0, entonces el IP se carga con IP+el valor de START. JMP SALTO IP <- IP + SALTO 5. DIRECCIONAMIENTO IMPLICITO. Las instrucciones que usan esta modo no tienen operandos. Ej. CLC. CARRY <- 0 RET RETORNO DESUBPROGRAMA


Descargar ppt "MODOS DE DIRECCIONAMIENTO"

Presentaciones similares


Anuncios Google