A CPU will tend to have many registers. A register is a small block of memory, normally about 4 bytes, which is used in order for instructions to be processed. Machine instructions can only work if they are loaded into registers. Special instructions exist which will load data from memory into the resisters.

Programs tend to load and save data into general purpose registers. These can be used for any purpose the programmer (or compiler) chooses. As well as general registers there are special purpose registers such as -

 

 

There are more general purpose registers than special purpose ones.

Registers run at the same clock speed as the processor. If they did not then the CPU would only be able to run at the same speed as the registers. Almost all instructions either read or change the contents of registers.