Unidad aritmética lógica, ALU

Unidad aritmética lógica, ALU

Una ALU debe procesar números usando el mismo formato que el resto del circuito digital. Para los procesadores modernos, este formato casi siempre es la representación de número binario de complemento a dos.
La ALU se compone básicamente de:
Circuito Operacional, Registros de Entradas, Registro Acumulador y un Registro de Estados, conjunto de registros que hacen posible la realización de cada una de las operaciones.
La mayoría de las acciones de la computadora son realizadas por la ALU, esta toma datos de los registros del procesador, estos datos son procesados y los resultados de esta operación se almacenan en los registros de salida de la ALU. Otros mecanismos mueven datos entre estos registros y la memoria, mientras que una unidad de control controla a la ALU, al ajustar los circuitos que le dicen a la ALU qué operaciones realizar.

La mayoría de las ALU pueden realizar las siguientes operaciones:

Operaciones aritméticas de números enteros (adición, sustracción, y a veces multiplicación y división, aunque esto es más costoso)
Operaciones lógicas de bits (AND, NOT, OR, XOR)
Operaciones de desplazamiento de bits (Desplazan o rotan una palabra en un número específico de bits hacia la izquierda o la derecha, con o sin extensión de signo).
Las entradas a la ALU son los datos en los que se harán las operaciones y un código desde la unidad de control indicando qué operación realizar. Su salida es el resultado del cómputo de la operación.
Generalmente se llama ALU al circuito que realiza operaciones aritméticas en formatos de número entero, mientras que los circuitos que calculan en formatos más complejos como punto flotante, números complejos, etc., reciben un nombre diferente.