Hablemos de registros en computadoras

En los registros de control y estado de la CPU, también hay un registro que se usa para almacenar la palabra de estado del programa PSW, que se usa para almacenar códigos de condición y otra información de estado. En las máquinas con un sistema de interrupción, también hay registros de banderas de interrupción, etc.

Cuando la memoria inicia una operación de lectura, la memoria lee la instrucción en la unidad de dirección especificada al MDR y luego la envía al IR desde el MDR. IR envía el código de operación en la instrucción a CU, que se utiliza para analizar la instrucción y emitir varias secuencias de comandos de microoperación. Además, el código de dirección de la instrucción se envía a MAR, que se utiliza para eliminar el operando.

Los datos deben proporcionarse a la ALU dentro de la CPU, por lo que la ALU debe tener acceso directo al MDR. También puede haber otros registros AC, MQ y Se utilizan para intercambiar datos con MDR y ser visibles para el usuario. registros.

Además de las unidades aritméticas y los controladores, también hay un componente común dentro de las CPU modernas: los registros, que son pequeñas áreas de almacenamiento que se utilizan para almacenar datos dentro de la CPU. Se utilizan para almacenar temporalmente datos y operaciones involucradas. en las operaciones.

En este artículo sobre las diferencias en las velocidades de lectura y escritura del hardware de la computadora, aprendimos sobre las diferencias en las velocidades de lectura y escritura de varios hardware de la computadora, que encontramos en el diagrama piramidal de la relación entre la velocidad de la memoria. , capacidad y precio:

El registro de nivel superior es el más rápido, tiene la capacidad más pequeña y es el más caro

Echemos un vistazo a algunos registros comunes:

Registro de datos (DR)

El registro de datos (DataRegister, DR) también se denomina registro de búfer de datos. El registro de datos se utiliza para almacenar operandos. Su número de dígitos debe cumplir con el número. rango de la mayoría de los tipos de datos Su función principal es servir como enlace entre la CPU, la memoria principal y los periféricos. Una estación de transferencia para la transmisión de información entre las CPU para compensar la diferencia en la velocidad de funcionamiento entre la CPU, la memoria principal y periféricos.

El registro de datos se utiliza para almacenar temporalmente una instrucción o una palabra de datos leída de la memoria principal, por el contrario, cuando una instrucción o una palabra de datos se almacenan en la memoria principal, también se almacenan temporalmente en la memoria principal; registro de datos medio.

La función del registro de datos es:

Como estación de transferencia para la transmisión de información entre la CPU, la memoria principal y los dispositivos periféricos para compensar la diferencia en la velocidad de operación entre ellos; la CPU, la memoria principal y los dispositivos periféricos. La diferencia en la unidad aritmética con estructura de acumulador único, el registro de datos también puede funcionar como registro de operando.

Registro de direcciones (AR)

El registro de direcciones (AddressRegister, AR) se utiliza para guardar la dirección de la unidad de memoria principal a la que accede actualmente la CPU. Puede ser versátil en sí mismo o puede usarse en modos de direccionamiento especiales, como punteros de segmento para direccionamiento base (almacenar la dirección base), registros de índice para direccionamiento indexado y pilas para direccionamiento de pila. El número de bits en el registro de direcciones debe ser lo suficientemente largo para dar cabida al rango máximo de direcciones.

Debido a la diferencia en la velocidad de operación entre la memoria principal y la CPU, el registro de dirección debe usarse para guardar temporalmente la información de dirección de la memoria principal hasta que se complete la operación de acceso a la memoria principal.

Registro de estado del programa (PSW)

El registro de estado del programa (PSW) se utiliza para almacenar diversa información de estado de los resultados de varias instrucciones de operación o instrucciones de prueba. Además, el programa. El registro de palabras de estado también se utiliza para guardar información como interrupciones y el estado de funcionamiento del sistema, de modo que la CPU y el sistema puedan comprender el estado de ejecución de la máquina y el estado de ejecución del programa de manera oportuna. El registro de estado del programa es una parte importante de la unidad aritmética

Registro de acumulación (AC)

El registro de acumulación generalmente se denomina acumulador (AC) y es un registro de propósito general. registro.

La función del acumulador es: cuando la unidad aritmética lógica ALU de la unidad aritmética realiza operaciones aritméticas o lógicas, proporciona un área de trabajo para la ALU y puede guardar temporalmente un operando o resultado de operación para la ALU . Obviamente, debe haber al menos un registro de acumulación en la unidad aritmética.

Registro de cociente multiplicador (MQ)

En la unidad aritmética, el registro de cociente multiplicador es el principal responsable de las operaciones de multiplicación y división de datos y puede guardar los resultados de la operación. Componente básico de la unidad aritmética. Es uno de los tres registros básicos de la unidad aritmética.

Contador de Programa (PC)

El Contador de Programa (PC) tiene dos funciones: registrar información y contar. Generalmente se utiliza para almacenar la dirección de la siguiente instrucción en la memoria principal. .

Antes de ejecutar el programa, se debe enviar al PC la primera dirección del programa, es decir, la dirección de la unidad de memoria principal donde se encuentra la primera instrucción del programa. El contenido de la PC es la primera instrucción extraída de la memoria principal. La dirección de la instrucción.

Al ejecutar una instrucción, la CPU puede incrementar automáticamente el contenido de la PC para que siempre guarde la dirección de la memoria principal de la siguiente instrucción a ejecutar y se prepare para recuperar la siguiente instrucción. Sin embargo, cuando se encuentra una instrucción de bifurcación, la dirección de la siguiente instrucción se especificará mediante el campo de código de dirección de la instrucción de bifurcación, en lugar de obtenerse incrementando secuencialmente el contenido de la PC como es habitual.

Registro de instrucciones (IR)

El Registro de instrucciones (InstructionRegister, IR) se utiliza para guardar la instrucción actual que se ejecutará.

Cuando se ejecuta una instrucción, primero se lee la instrucción desde la memoria principal al registro de datos y luego se transfiere al registro de instrucciones.

La instrucción incluye dos campos: código de operación y código de dirección. Para ejecutar la instrucción, se debe probar el código de operación e identificar la operación requerida. El decodificador de instrucciones completa este trabajo. El decodificador de instrucciones decodifica la parte del código de operación del registro de instrucciones para generar el potencial de control para la operación requerida por la instrucción y lo envía al circuito de control de microoperación. Bajo la acción de la señal de sincronización del componente de sincronización, control de operación específico. se genera la señal.

La salida del campo de código de operación en el registro de instrucciones es la entrada al decodificador de instrucciones. Una vez que se decodifica el código de operación, puede enviar señales específicas para operaciones específicas al controlador de operación.

MAR, MDR Además, los registros no solo existen en la CPU, sino también en la memoria, como MAR, MDR

MDR: Registro de datos de memoria, utilizado para almacenar datos en almacenarse en la memoria o los datos leídos más recientemente de la memoria. La función es similar a DR.

El registro de dirección de memoria se utiliza para almacenar la dirección de la unidad de memoria a la que se accede. Su función es similar a AR.

La cantidad de dígitos MAR refleja la cantidad de unidades de almacenamiento, es decir, la cantidad máxima de estados diferentes que se pueden representar; la cantidad de dígitos MDR = longitud de la palabra de almacenamiento = el tamaño de cada unidad de almacenamiento.

Resumen

Combinando los registros anteriores, podemos dibujar un diagrama más detallado de la computadora: