Register is partially memory of the microprocessor which can be accessed at high speed or a small amount of storage available as part of a CPU or other digital processor. Such registers are (typically) addressed by mechanisms other than main memory and can be accessed more quickly. Almost all computers, load-store architecture or not, load data from a larger memory into registers where it is used for arithmetic, manipulated, or tested, by some machine instruction. Manipulated data is then often stored back in main memory, either by the same instruction or a subsequent one. Modern processors use either static or dynamic RAM as main memory, the latter often being implicitly accessed via one or more cache levels. A common property of computer programs is locality of reference: the same values are often accessed repeatedly and frequently used values held in registers improves performance. This is what makes fast registers (and caches) meaningful (From wikipedia.org).
Currently, most computers use a 9 registers 32bit. That is:
1. EAX: Extended Accumulator Register
2. EBX: Extended Base Register
3. ECX: Extended Counter Register
4. EDX: Extended Data Register
5. ESI: Extended Source Index
6. EDI: Extended Destination Index
7. EBP: Extended Base Pointer
8. ESP: Extended Stack Pointer
9. EIP: Extended Instruction Pointer
EBP: EBP most widely associated with the stack and stack frames.
ESP: ESP points to the stack of the current process. Stack is a place where data is stored, and will be used later (for more detail, we learn first the pop / push)
EIP: EIP always points to the next instruction to be executed.
Tidak ada komentar:
Posting Komentar