Akumulator to urządzenie obliczeniowe, zazwyczaj rejestr, używane do przechowywania wielu słów lub pojedynczych liczb w pamięci komputera. Może być używany do przechowywania wartości z różnych źródeł wejściowych, takich jak jednostka arytmetyczna lub pamięć. Ponadto akumulator może być używany do obliczania sumy dwóch lub więcej wartości lub do kopiowania lub przenoszenia danych z jednej lokalizacji do drugiej. Jest również często używany w programowaniu komputerowym do przechowywania najnowszego wyniku dowolnego obliczenia.
Akumulator jest ważnym elementem komputerów jako bufor danych używany do przechowywania danych pośrednich między różnymi etapami obliczeń. W programowaniu asemblerowym może być używany do odczytu i zapisu jednego słowa z pamięci. W językach wysokiego poziomu, takich jak C i Pascal, jest czasami używany do przechowywania zmiennych i parametrów lub do określania, czy operacje matematyczne powinny być wykonywane na wyniku obliczeń.
Akumulator wykonuje trzy rodzaje operacji: dodawanie, odejmowanie i mnożenie. Ponadto akumulator może również wykonywać operacje logiczne, takie jak logiczne i, logiczne lub i wyłączne lub. Operacje te umożliwiają akumulatorowi połączenie dwóch lub więcej wartości w celu uzyskania wyniku końcowego.
W programowaniu komputerowym akumulator ogólnie odnosi się do rejestru w jednostce arytmetyczno-logicznej (ALU) procesora, który zawiera bieżącą sumę obliczeń. Akumulator jest również znany jako rejestr akumulatora i może zawierać różne stany liczby lub w niektórych przypadkach może zawierać kombinację kilku słów, w zależności od rodzaju przechowywanych danych i zamierzonego zastosowania akumulatora.
Akumulatory są ważną częścią nowoczesnych architektur obliczeniowych, ponieważ pozwalają na szybsze przetwarzanie i przesyłanie danych. Pozwalają one komputerom z łatwością wykonywać złożone operacje, zapewniając możliwość szybkiego i wydajnego przechowywania dużych ilości danych i manipulowania nimi. Akumulatory są szeroko stosowane w informatyce i można je znaleźć w wielu różnych obszarach, takich jak przetwarzanie grafiki, sztuczna inteligencja i uczenie maszynowe.