Diseño Y Organización Del Computador
Enviado por rgomezs2000 • 21 de Noviembre de 2011 • 1.868 Palabras (8 Páginas) • 673 Visitas
Organización y diseño básico de una computadora
T E M A S
Intrucciones de la computadora
Registros de computadora
Temporización y control
Ciclo de instrucción
Entrada-Salida de interrupción
Compuertas logicas y de control (Diseño de la computadora basica)
Intrucciones de la computadora
Una instrucción de computadora es un código binario que especifica una secuencia de microoperaciones para la computadora. Los códigos de instrucciones y los datos se almacenan en memoria. La computadora lee cada instrucción de la memoria y la coloca en un registro de control. Entonces el control interpreta el código binario de la instrucción y procede a ejecutarlo mediante una secuencia de microoperaciones. La capacidad de almacenar y ejecutar instrucciones, el concepto de programa almacenado, es la propiedad más importante de una computadora de uso general.
Organización de un programa almacenado
Un código de instrucciones es un grupo de bits que instruye a la computadora sobre como ejecutar una operación especifica, por lo general se divide en partes y cada una tiene una interpretación propia. La parte más básica de un código de instrucción es su parte de operación. El código de operación de una instrucción es un grupo de bits que definen operaciones como sumar, restar, multiplicar, desplazar y complementar.
Un código de operación se denomina Macrooperación, porque especifica un conjunto de microoperaciones.
Un código de instrucción especifica tambien los registros o las palabras de la memoria donde se van a encontrar los operandos, al igual que el registro o la palabra de memoria donde se va a almacenar el resultado.
Las computadoras que tienen un registro de procesador único, por lo general lo nombran Acumulador y lo etiquetan como AC.
Si una operación de un código de instrucción no necesita un operando de la memoria, puede usarse el resto de los bits de la instrucción para otros propositos, por ejemplo las operaciones como: Borrar AC, Complementar AC e Incrementar AC operan sobre los datos almacenados en el registro AC; no necesitan un operando en la memoria. Para este tipo de operaciones no se necesita la segunda parte del código de instrucción(del bit cero al once) para especificar una dirección de memoria, y puede utilizarse para especificar otras operaciones para la computadora.
Dirección Efectiva
Es la dirección del operando en una instrucción de tipo de computación, o la dirección objetiva en una instrucción de tipo transferencia del programa.
Instrucciones de la computadora
Instrucciones de referencia a memoria
Instrucciones de referencia a registros
Instrucciones de entrada/salida.
Registros de la computadora
Lista de registros para una computadora básica
# Bits Función
DR (Registro de datos) 16 Contiene el operando en la memoria
AR (Registro de dirección) 12 Contiene la dirección para la memoria
AC (Acumulador) 16 Contiene el registro del procesador
IR (Registro de instrucción) 16 Contiene el código de instrucción
PC (Contador de programa) 12 Contiene el código de la siguiente instrucción
TR (Registro temporal) 16 Contiene datos temporales
INPR (Registro de entrada) 8 Contiene el carácter de entrada
OUPR (Registro de salida) 8 Contiene el carácter de salida.
Por lo general las instrucciones de computadora se almacenan en posiciones de memoria consecutivas, y se ejecutan de manera secuencial, una sola a la vez. El control lee una instrucción de una dirección especifica en la memoria y la ejecuta. Despues continua leyendo la siguiente instrucción en secuencia y reejecuta y asi sucesivamente. Este tipo de secuencia de instrucciones necesita un contador para cálcular la dirección de la siguiente instrucción, después que se termina la ejecución de la instrucción presente. También es necesario proporcionar un registro en la unidad de control para almacenar el código de instrucción después de que se lee de la memoria. La computadora necesita también los registros del procesador para manipular datos y un registro para contener una dirección de memoria.
NOTA: El número total de instrucciones escogidas para la computadora básica es de 25
Instrucciones de referencia a memoria
AND 0XXX 8XXX Aplicar AND a la palabra de memoria a AC
ADD 1XXX 9XXX Sumar la palabra de memoria a AC
LDA 2XXX AXXX Cargar la palabra de memoria a AC
STA 3XXX BXXX Cargar el contenido de AC a la memoria
BUM 4XXX CXXX Brincar en forma incondicional
BSA 5XXX DXXX Brincar y guardar la dirección de retorno
ISZ 6XXX EXXX Incrementar y brincar si hay un cero.
Intrucciones de referencia a registros
CLA 7800 Borrar AC
CLE 7400 Borar E (E=flip-flop donde se guarda el acarreo)
CMA 7200 Complementar AC
CME 7100 Complementar E
CIR 7080 Circular a la derecha AC y E
CIL 7040 Circular a la izquierda AC y E
INC 7020 Incrementar AC
SPA 7010 Brincar a la siguiente instrucción si AC es +
SNA 7008 Brincar a la siguiente instrucción si Ac es -
SZA 7004 Brincar a la siguiente instrucción si Ac es 0
SZE 7002 Brincar a la siguiente instrucción si E=0
HLT 7001 Detener la computadora
Intrucciones de entrada/salida
INP F800 Introducir un carácter en AC
OUT F400 Sacar un carácter desde AC
SKI F200 Brincar bandera de entrada
SKO F100 Brincar si hay bandera de salida
ION F080 Interrupción encendida
IOF F040 Interrupción apagada
Temporización y control
Los pulsos de reloj en una computadora se aplican a todos los Flip-Flops y registros del sistema, incluyendo los de la unidad de control. Las señales de control se generan en la unidad de control y proporcionan entradas de control para los multiplexores de Bus común, para los registros del procesador y para las microoperaciones del acumulador.
Unidad de control de la computadora básica
Existen dos tipos principales de organizaciones de control:
Control por cableado
...