program counter
stores the adress of the next instruction to be executed
memory adress register
hold the adress of the location that is to be read from or written too
memory data register
temporarily stores data that has been read or data that has to be written
what is the acumulator
stores the results from the calculations
what is the current instruction register
holds the current instruction being executed