A computer system employs a memory hierarchy. At the highest level of
hierarchy, memory is faster, smaller and more expensive. Within the CPU,
there is a set of registers which can be treated as a memory in the
highest level of hierarchy. The registers in the CPU can be categorized into
two groups:
- User-visible registers: These enables the machine - or assembly-language programmer to minimize main memory reference by optimizing use of registers.
- Control and status registers: These are used by the control unit to control the operation of the CPU. Operating system programs may also use these in privileged mode to control the execution of program.