Para acceder a una dirección especifica la CPU manda señales en el bus de dirección el cual tiene un tamaño aproximado de 32bits, y estos nos permiten especificar a la CPU 4,296,967,296 (232 ) direcciones diferentes de la memoria.

Para comenzar, dejaremos claro que la representación de las localidades de memoria se representa mediante el sistema numérico hexadecimal; la razón de ser de ello es por lo siguiente:

  • Hablando de un bus de direcciones de 8 bits, tiene acceso a 256 posiciones (Rango 00-FFh).
  • En el bus de direcciones que tiene 20 bits, las posibilidades son 1.048.576 (Rango 00000-FFFFFh).
  • Si tratamos con las direcciones de 16 bits, tenemos acceso a 65.536 posiciones (Rango 0000-FFFFh).

A cada bit de datos se le es asignada una dirección y cada dirección corresponde a una ubicación en la memoria. El proceso para almacenar la información en la memoria se da de la siguiente forma:

  • El procesador envía la dirección para los datos.
  • El controlador de la memoria encuentra la ubicación adecuada.
  • Por último, el procesador envía los datos a escribir.

La lectura de la información pasa por un proceso semejante:

  • El procesador envía la dirección de los datos solicitados.
  • El controlador de la memoria encuentra los bits de información contenidos en dicha dirección.
  • Posteriormente los envía al bus de datos del procesador.

TIPOS DE ASIGNACIÓN DE MEMORIA

La asignación de memoria a cada nuevo registro se puede considerar desde 2 puntos, que son los siguientes: Físico y Lógico.

Dentro del Físico podemos acceder a las distintas posiciones de memoria a través de los medios electrónicos.
Dentro del medio lógico encontraremos como se expresan y guardan las direcciones.

ASIGNACIÓN LÓGICA DE MEMORIA

Si hablamos de la asignación lógica encontraremos que existen las siguientes:

• La asignación dinámica,es la asignación de almacenamiento de memoria para utilización por parte de un programa de computador durante el tiempo de ejecución de ese programa. Es una manera de distribuir la propiedad de recursos de memoria limitada entre muchas piezas de código y datos. Un objeto asignado dinámicamente permanece asignado hasta que es desasignado explícitamente, o por el programador o por un recolector de basura.

• La asignación estática, consiste en el proceso de asignar memoria en tiempo de compilación antes de que el programa asociado sea ejecutado.

ASIGNACIÓN FÍSICA DE MEMORIA

Dentro del Físico podemos acceder a las distintas posiciones de memoria a través de los medios electrónicos.

Los registros pueden ser clasificados en 2 tipos:

  • Circuito operacional: capaz de acumular información binaria en sus flip-flop y tiene compuertas capaces de realizar tareas de procesamiento de datos.
  • Registro de almacenamiento: usado únicamente para el almacenamiento temporal de la información binaria, la cual no puede ser alterada cuando se transfiere ya sea hacia dentro o fuera del registro.

Donde una unidad de memoria es una colección de registros de almacenamiento conjuntamente con los circuitos asociados necesarios para la transferencia de información, los cuales se llaman registros de memoria; esta almacena la información en grupos llamados palabras y cada una de ellas se almacenan en un registro de memoria. La información transferida a los elementos de salida se toma de los registros en la unidad de memoria, se manda a los registros operacionales y el resultado de esto se devuelve a los registros de memoria.

Una palabra es una entidad de x bits que se mueven hacia dentro y fuera del almacenamiento como una unidad, puede representar un operando, una instrucción, o un grupo de caracteres alfanuméricos o cualquier información codificada binariamente.

La comunicación entre una unidad de memoria y lo que la rodea se logra por medio de dos señales:

  • Las señales de control: especifican la dirección de la trasferencia requerida, cuando una palabra debe ser acumulada en un registro de memoria o cuando una palabra almacenada previamente debe ser transferida hacia afuera del registro de memoria.
  • Registros externos: Uno especifica el registro de memoria escogido entre los miles disponibles; otro especifica la configuración en bits de dicha palabra.

El registro de direcciones de memoria especifica la palabra de memoria seleccionada. A cada una se le asigna un número de identificación comenzando desde 0 hasta el número máximo de palabras disponible, posteriormente el número de localización o dirección se transfiere al registro de direcciones.

Las dos señales de control aplicadas a la unidad de memoria se llaman lectura y escritura, cada una es referenciada por la unidad de memoria.

Los circuitos internos de la memoria aceptan esta dirección del registro y abren caminos necesarios para seleccionar la palabra.

Después de aceptar una de las señales, los circuitos de control interno dentro de la unidad de memoria suministran la función deseada. La información primaria se destruye cuando se escribe la nueva. La secuencia del control interno en una memoria de lectura destructible debe proveer señales de control que puedan causar que la palabra sea restaurada en sus celdas binarias.

La información transferida hacia dentro y fuera de los registros en la memoria y al ambiente externo, se comunica a través de un registro llamado registro separador de memoria (buffer register). Cuando la unidad de memoria recibe una señal de control de escritura, el control interno interpreta el contenido del registro separador como la configuración de bits de la palabra que se va a almacenar en un registro de memoria. Con una señal de control de lectura, el control interno envía la palabra del registro de memoria al registro separador.

La secuencia de operaciones necesarias para comunicarse con la unidad de memoria para transferir una palabra hacia afuera dirigida al BR es:

  1. Transferir los bits de dirección de la palabra seleccionada al AR.
  2. Activar la entrada de control de lectura.

La secuencia de operaciones necesarias par a almacenar una nueva

  1. Transferir los bits de direcci6n de la palabra seleccionada al MAR.
  2. Transferir los bits de datos de la palabra al MBR.
  3. Activar la entrada de control de escritura.


MÉTODOS DE DIRECCIONAMIENTO

Generalmente una instrucción consta de una parte de operación y una de dirección.

La parte de dirección contiene la dirección de un operando utilizado en la ejecución de la instrucción o la dirección donde se encuentra la dirección del operando; el primer caso la dirección es dirección directa, el segundo es operación indirecta.

  • Directo, la instrucción contiene la dirección de la posición de memoria donde se encuentra el operando.
  • Indirecto, contiene la dirección donde se encuentra la dirección del operando.
  • Relativo, contiene el número N. En memoria la dirección del operando se encuentra sumando el numero N al número del contador del programa.
  • Indexado, contiene un número N que puede ser positivo o negativo.
  • Inmediato, contiene el mismo operando.

MODOS DE ACCESO

El modo de acceso de un sistema de memoria se determina por el tipo de componentes usados.

  • Memoria de acceso aleatorio, los registros están separados en el espacio, con cada registro ocupando un lugar espacial particular en una memoria de núcleos magnéticos.
  • Memoria de acceso secuencial, la información almacenada en algún medio no es accesible inmediatamente pero se obtiene solamente en ciertos intervalos de tiempo.
About these ads