Accumulator (computing)

Without a register like an accumulator, it would be necessary to write the result of each calculation (addition, multiplication, shift, etc.)

Modern computer systems often have multiple general-purpose registers that can operate as accumulators, and the term is no longer as common as it once was.

For instance, a manual calculation of a worker's weekly payroll might look something like: A computer program carrying out the same task would follow the same basic sequence of operations, although the values being looked up would all be stored in computer memory.

In early computers, the number of hours would likely be held on a punch card and the pay rate in some other form of memory, perhaps a magnetic drum.

Almost all early[clarification needed] computers were accumulator machines with only the high-performance "supercomputers" having multiple registers.

Then as mainframe systems gave way to microcomputers, accumulator architectures were again popular with the MOS 6502 being a notable example.

Any system that uses a single "memory" to store the result of multiple operations can be considered an accumulator.

J. Presper Eckert refers to even the earliest adding machines of Gottfried Leibniz and Blaise Pascal as accumulator-based systems.

The IBM System/360, and Digital Equipment Corporation's PDP-6, had 16 general-purpose registers, although the PDP-6 and its successor, the PDP-10, call them accumulators.

However, MUL and DIV are special cases; other arithmetic-logical instructions (ADD, SUB, CMP, AND, OR, XOR, TEST) may specify any of the eight registers EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI as the accumulator (i.e. left operand and destination).

Walther WSR-16 mechanical calculator. The row of digit-wheels in the carriage (at the front), is the Accumulator.
Front panel of an IBM 701 computer with lights displaying the accumulator and other registers