Learn about the technologies behind the Internet with The TCP/IP Guide!|
NOTE: Using robot software to mass-download the site degrades the server and is prohibited. See here for more.
Find The PC Guide helpful? Please consider a donation to The PC Guide Tip Jar. Visa/MC/Paypal accepted.
|View over 750 of my fine art photos any time for free at DesktopScenes.com!|
Registers are local storage areas within the processor that are used to hold data that is being worked on by the processor. Every processor has a few of these, some dedicated to a specific task and others available for general use by programmers. Registers are the fastest memory available for use in the PC, even faster than the level 1 cache, because they are hard-wired right into the processor logic.
Most operations are done on registers; the processor can't directly perform arithmetic in memory for example. If you want to add 1 to a memory location, the processor will normally do this by loading the initial value from memory into a register, adding 1 to the register, and then saving the value back to memory. This of course happens very quickly and transparently to the programmer.
The width (in bits) of the processor's registers determine how much data it can compute with at a time. This is sometimes used to label the processor's "size". For example, you may hear people talk about a "16 bit processor" or a "32 bit processor". This term normally refers to the register size within the CPU. The term is also however often misused, and sometimes people refer to the size of a processor based on its data bus width (for example) which isn't really correct. Interestingly, every processor introduced in the last decade, from the earliest 386SX to the latest Pentium II or K6, is a 32 bit processor, based on this definition. So this isn't going to be something you use to differentiate between CPUs. :^)
The more registers in the processor, the more flexibility programmers have to write better code. However, it increases the complexity of the processor. Here too, compatibility is an issue, and later processors are stuck with the limitations of the early processor designs.
Next: Bus Interface Unit