Wewnątrz komputera znajduje się arytmetyczna jednostka logiczna (ALU), która oprócz operacji arytmetycznych (np. dodawanie, odejmowanie itp.) jest zdolna do wykonywania operacji logicznych (np. AND, OR, Ex-OR, Invert itp.). Jednostka sterująca dostarcza dane wymagane przez ALU z pamięci, lub z urządzeń wejściowych i kieruje ALU do wykonania określonej operacji na podstawie instrukcji pobranej z pamięci. ALU jest „kalkulacyjną” częścią komputera.
Jednostka arytmetyczno-logiczna (ALU) jest głównym elementem centralnej jednostki obliczeniowej systemu komputerowego. Wykonuje ona wszystkie procesy związane z operacjami arytmetycznymi i logicznymi, które muszą być wykonane na słowach instrukcji. W niektórych architekturach mikroprocesorowych ALU jest podzielona na jednostkę arytmetyczną (AU) i jednostkę logiczną (LU).
Jednostka ALU może być zaprojektowana przez inżynierów do obliczania wielu różnych operacji. Kiedy operacje stają się coraz bardziej skomplikowane, ALU staje się coraz droższa, zajmuje więcej miejsca w procesorze i wydziela więcej ciepła. Dlatego inżynierowie tworzą ALU wystarczająco wydajne, aby zapewnić, że procesor jest również wydajny i szybki, ale nie tak skomplikowane, aby stać się zaporowe pod względem kosztów i innych wad.
ALU jest również znany jako Integer Unit (IU). Jednostka arytmetyczno-logiczna jest tą częścią procesora, która wykonuje wszystkie obliczenia, których procesor może potrzebować. Większość z tych operacji ma charakter logiczny. W zależności od tego, jak zaprojektowana jest jednostka ALU, może ona uczynić procesor bardziej wydajnym, ale również zużywa więcej energii i wytwarza więcej ciepła. Dlatego musi istnieć równowaga między tym, jak potężna i złożona jest ALU, a tym, jak droga staje się cała jednostka. To dlatego szybsze procesory są droższe, zużywają więcej energii i wydzielają więcej ciepła.
Różne operacje wykonywane przez ALU można podzielić na następujące kategorie –
-
operacje logiczne – obejmują one operacje takie jak AND, OR, NOT, XOR, NOR, NAND itp.
-
Operacje przesuwania bitów – odnoszą się do przesunięcia pozycji bitów o określoną liczbę miejsc w prawo lub w lewo, co jest uważane za operacje mnożenia lub dzielenia.
-
Operacje arytmetyczne – odnoszą się do dodawania i odejmowania bitów. Chociaż mnożenie i dzielenie są czasami używane, te operacje są droższe do wykonania. Mnożenie i odejmowanie może być również wykonywane odpowiednio przez powtarzalne dodawanie i odejmowanie.