Parts of the CPU
The Accumulator is a register inside the CPU that holds the result of the most recent operation carried out by the Arithmetic Logic Unit (ALU). Along with the Program Counter, Memory Address Register and Memory Data Register, it is one of the four registers of Von Neumann architecture.
The Accumulator holds data: a value or the answer to a calculation. It never holds an address. An address says where something is stored, while the Accumulator holds the value itself. A common mix-up is thinking it stores the location of a result; it stores the result.
In the execute stage the ALU carries out the arithmetic or logical work for the current instruction, using the data it has been given, and whatever it produces is placed in the Accumulator. For example, a photo editing app might brighten a picture by adding 20 to the red value of every pixel; the ALU works out each new red value and the Accumulator holds it until the CPU writes it back to memory.
The Accumulator does not do the calculation. The ALU does the work, and the Accumulator is only where the answer is kept. Keeping it in a register means the next instruction can use it straight away rather than waiting for a slower read from RAM. The Accumulator also does not decode instructions or control the flow of data; those are jobs for other CPU components.
OCR GCSE Computer Science · Parts of the CPU