Jednostka arytmetyczno-logiczna (ALU) jest częścią procesora komputerowego (CPU), która wykonuje operacje arytmetyczne i logiczne na operandach w słowach instrukcji komputerowych. W niektórych procesorach jednostka ALU jest podzielona na dwie jednostki: arytmetyczną (AU) i logiczną (LU). Niektóre procesory zawierają więcej niż jedną jednostkę AU – na przykład jedną dla operacji stałoprzecinkowych i drugą dla operacji zmiennoprzecinkowych. (W komputerach osobistych operacje zmiennoprzecinkowe są czasami wykonywane przez jednostkę zmiennoprzecinkową na oddzielnym układzie zwanym koprocesorem numerycznym.)
Typowo ALU ma bezpośredni dostęp do wejścia i wyjścia kontrolera procesora, pamięci głównej (pamięć o dostępie losowym lub RAM w komputerze osobistym) oraz urządzeń wejścia/wyjścia. Wejścia i wyjścia przepływają wzdłuż ścieżki elektronicznej, która jest nazywana magistralą. Wejście składa się ze słowa instrukcji (czasami nazywanego słowem instrukcji maszynowej), które zawiera kod operacji (czasami nazywany „kodem op”), jeden lub więcej operandów, a czasami kod formatu. Kod operacji mówi ALU, jaką operację ma wykonać i jakie operandy są używane w tej operacji. (Na przykład, dwa operandy mogą być dodane do siebie lub porównane logicznie). Format może być połączony z kodem op i mówi na przykład, czy jest to instrukcja stałoprzecinkowa czy zmiennoprzecinkowa. Wyjście składa się z wyniku, który jest umieszczany w rejestrze pamięci i ustawień, które wskazują, czy operacja została wykonana pomyślnie. (Jeśli nie, pewien rodzaj statusu będzie przechowywany w stałym miejscu, które czasami nazywane jest słowem stanu maszyny.)
Ogólnie ALU zawiera miejsca przechowywania operandów wejściowych, operandów dodawanych, skumulowanego wyniku (przechowywanego w akumulatorze) i wyników przesuniętych. Przepływ bitów i operacje wykonywane na nich w podjednostkach ALU są kontrolowane przez obwody bramkowe. Bramki w tych obwodach są sterowane przez jednostkę logiki sekwencyjnej, która dla każdego kodu operacji stosuje określony algorytm lub sekwencję. W jednostce arytmetycznej mnożenie i dzielenie wykonywane jest przez serię operacji dodawania lub odejmowania i przesuwania. Istnieje kilka sposobów reprezentowania liczb ujemnych. W jednostce logicznej można wykonać jedną z 16 możliwych operacji logicznych – takich jak porównywanie dwóch operandów i identyfikowanie miejsc, w których bity się nie zgadzają.
Projekt ALU jest oczywiście krytyczną częścią procesora, a nowe podejścia do przyspieszenia obsługi instrukcji są stale rozwijane.
Dzięki temu, że ALU jest procesorem o dużej mocy obliczeniowej, można w nim wykonywać wiele operacji.