Difference between revisions of "Register"
m (Proper cat, clarify a bit) |
(Register renaming) |
||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
The first computers did not include many registers in the CPU, since each register needs separate [[hardware]], and that was a scarce resource early on. Many machines only had a single register available for doing computations with, the '''accumulator'''; these machines were typically a [[load-store architecture]]. | The first computers did not include many registers in the CPU, since each register needs separate [[hardware]], and that was a scarce resource early on. Many machines only had a single register available for doing computations with, the '''accumulator'''; these machines were typically a [[load-store architecture]]. | ||
− | Later on, hardware was not so much of an issue, but computers still tend to have somewhat limited numbers of registers, because they are named by fields in [[instruction]]s, and [[bit]]s in the instruction [[word]] are (and always will be) a limited resource. | + | Later on, hardware was not so much of an issue, but computers still tend to have somewhat limited numbers of programmer-visible registers, because they are named by fields in [[instruction]]s, and [[bit]]s in the instruction [[word]] are (and always will be) a limited resource. ([[Register renaming]] was developed to allow more registers to be used, without being able to explicitly name them.) |
==See also== | ==See also== | ||
Line 11: | Line 11: | ||
{{semi-stub}} | {{semi-stub}} | ||
+ | |||
+ | [[Category:Hardware Basics]] |
Latest revision as of 12:10, 14 May 2021
A register is a special small memory unit; usually within a CPU, i.e. not part of the machine's main memory, although device controllers usually include registers too. For the ones which are part of the CPU, access to them is very fast - usually faster than main memory.
The first computers did not include many registers in the CPU, since each register needs separate hardware, and that was a scarce resource early on. Many machines only had a single register available for doing computations with, the accumulator; these machines were typically a load-store architecture.
Later on, hardware was not so much of an issue, but computers still tend to have somewhat limited numbers of programmer-visible registers, because they are named by fields in instructions, and bits in the instruction word are (and always will be) a limited resource. (Register renaming was developed to allow more registers to be used, without being able to explicitly name them.)