Metodos de direccionamiento fisico y pila

Solo disponible en BuenasTareas
  • Páginas : 12 (2855 palabras )
  • Descarga(s) : 0
  • Publicado : 7 de noviembre de 2011
Leer documento completo
Vista previa del texto
Lenguajes de Bajo Nivel

Direccionamiento De Memoria Y Pila
En
Microprocesadores Intel 8086/8088

Reséndiz J. Gustavo
Instituto Politécnico Nacional

21/octubre/2011
Índice:
Métodos De Direccionamiento De Memoria Y Pila En Microprocesadores Intel 8086/8088

Direccionamiento De Localidades De Memoria.___________________________________________3

Segmentos YDireccionamiento.____________________________________________________________

__3
Segmento De Código______________________________________________________

____________3
Segmento De Datos_______________________________________________________

____________3
Segmento De Pila________________________________________________________

_____________4

Segmentos Y Desplazamientos(Offsets)_________________________________________________4

Direccionamiento De Programas___________________________________________________

_______5

La Pila (Stack)____________________________________________________________

__________________7

Modos De Direccionamiento____________________________________________

___________________9

Ejemplos DeDireccionamiento:_________________________________________________________11

Bibliografía________________________________________________

____________________________________13

Direccionamiento De Localidades De Memoria.
Dependiendo del modelo, el microprocesador puede accesar a uno o más bytes de memoria a la vez.
Considere el número decimal 1,025. La representación hexadecimal de esta cifra, 0401h, requiere de dos bytes (o una palabra) dememoria. Consta de un byte de orden alto ( más significativo), 04, y uno de orden bajo (menos significativo), 01. El sistema almacena en memoria estos bytes en secuencia inversa de bytes: el byte de orden bajo en la dirección baja de memoria y el byte de orden alto en la dirección alta de memoria. Por ejemplo, el procesador transferiría 0401h de un registro de localidades de memoria 5612 y 5613como:

El procesador espera que los datos numéricos en la memoria estén en secuencia inversa de bytes y los procesa de acuerdo con esto. Cuando el procesador recupera la palabra de la memoria, otra vez invierte los bytes, restableciéndolos de manera correcta en el registro como 04 01 hexadecimal. Aunque esta característica es enteramente automática, usted tiene que estar alerta cuando programe ydepure programas en lenguaje ensamblador.

Un programador en lenguaje ensamblador tiene que distinguir claramente la dirección y los contendidos de una localidad de memoria. En el ejemplo anterior, el contenido de la localidad de memoria 5612 es 01 y el contenido de la localidad 5613 es 04.

Segmentos Y Direccionamiento
Un segmento es un área especial en el programa que inicia un límite de unpárrafo, esto es, en una localidad regularmente divisible entre 16, o 10 hexadecimal. Aunque un segmento puede estar ubicado casi en cualquier lugar de memoria y , en modo real, puede ser de 64k, solo necesita tanto espacio como el programa requiera para la ejecución.

Un segmento en modo real puede ser de hasta 64k. Se puede tener cualquier número de segmentos; para direccionar un segmento enparticular basta cambiar la dirección den el registro del segmento apropiado. Los tres segmentos principales son los segmentos de código, de datos y de la pila.

Segmento De Código
El segmento de código (CS) contiene las instrucciones de máquina que son ejecutadas. Por lo común, la primera instrucción ejecutable esta en inicio del segmento, y el sistema operativo enlaza a esta localidad parainiciar la ejecución del programa. Como su nombre indica, el registro del CS direcciona el segmento de código. Si su área de código requiere más de 64k, su programa puede necesitar definir más de un segmento de código.

Segmento De Datos
El segmento de datos(DS) contiene datos, constantes y áreas de trabajo definidos por el programa. El registro DS direcciona el segmento de datos. Si su área...
tracking img