Dentro de un ordenador, hay una Unidad Lógica Aritmética (ALU), que es capaz de realizar operaciones lógicas (por ejemplo, AND, OR, Ex-OR, Invertir, etc.) además de las operaciones aritméticas (por ejemplo, Adición, Sustracción, etc.). La unidad de control suministra los datos requeridos por la ALU desde la memoria, o desde los dispositivos de entrada, y dirige la ALU para realizar una operación específica basada en la instrucción obtenida de la memoria. La ALU es la parte «calculadora» del ordenador.
Una unidad aritmética lógica (ALU) es un componente principal de la unidad central de procesamiento de un sistema informático. Realiza todos los procesos relacionados con las operaciones aritméticas y lógicas que deben realizarse sobre las palabras de instrucción. En algunas arquitecturas de microprocesadores, la ALU se divide en la unidad aritmética (AU) y la unidad lógica (LU).
Una ALU puede ser diseñada por los ingenieros para calcular muchas operaciones diferentes. Cuando las operaciones se vuelven más y más complejas, entonces la ALU también se volverá más y más cara y también ocupa más espacio en la CPU y disipa más calor. Por ello, los ingenieros hacen que la ALU sea lo suficientemente potente como para que la CPU sea también potente y rápida, pero no tan compleja como para que se convierta en algo prohibitivo en términos de coste y otras desventajas.
La ALU también se conoce como Unidad de Números Enteros (IU). La unidad aritmética lógica es la parte de la CPU que se encarga de todos los cálculos que la CPU pueda necesitar. La mayoría de estas operaciones son de naturaleza lógica. Dependiendo de cómo esté diseñada la ALU, puede hacer que la CPU sea más potente, pero también consume más energía y genera más calor. Por tanto, debe haber un equilibrio entre lo potente y compleja que es la ALU y lo cara que resulta toda la unidad. Esta es la razón por la que las CPUs más rápidas son más caras, consumen más energía y disipan más calor.
Las diferentes operaciones que realiza la ALU se pueden clasificar de la siguiente manera –
-
Operaciones lógicas – Estas incluyen operaciones como AND, OR, NOT, XOR, NOR, NAND, etc.
-
Operaciones de desplazamiento de bits – Esto se refiere al desplazamiento de las posiciones de los bits en un cierto número de lugares, ya sea hacia la derecha o hacia la izquierda, lo que se considera una operación de multiplicación o división.
-
Operaciones aritméticas – Esto se refiere a la suma y la resta de bits. Aunque a veces se utilizan la multiplicación y la división, estas operaciones son más caras de realizar. La multiplicación y la sustracción también se pueden realizar mediante sumas y restas repetitivas respectivamente.