Several memory locations (depending of the processor itself) that are used by the internal functions of the computer or by assembly language programmers. Data can be PUSHed or POPed to or from a particular register to accomplish a particular task. End users are not normally concerned with registers or the content of them. For more information about registers, we suggest that you take a starting course in assembly language for the particular processor in question. This is roughly the equivalent of “setting a variable” in higher level programming languages.