Program Counter (PC)
Stores the address of the next instruction to be fetched from memory
Address Registers (MAR)
Stores the address of the instruction or data to be fetched from or written to memory
Data Register (MDR)
Stores the data that has been fetched from memory or being written to memory and sends data to the ALU to be executed
Current Instruction Register (CIR)
Stores the instruction the CPU is currently decoding or executing
Accumulator
Temporarily stores the results of the calculations performed by the arithmetic and logic unit