-
Cpu Components And Functions Pdf To Word카테고리 없음 2020. 2. 18. 01:01
Register organizationWithin the CPU, there is a set of registers that function as a level of memory above main memory and cache in the hierarchy. The registers in the CPU perform two roles:. User-visible registers: These enable the machine- or assembly-language programmer to minimize main memory references by optimizing use of registers. Control and status registers: These are used by the control unit to control the operation of the CPU and by privileged, operating system programs to control the execution of programs.There is not a clean separation of registers into these two categories. For example, on some machines the program counter is user visible (e.g., Pentium), but on many it is not (e.g., PowerPC). For purposes of the following discussion, however, we will use these categories.
User-Visible RegistersA user-visible register is one that may be referenced by means of the machine language that the CPU executes. We can characterize these in the following categories:. General purpose. Data. Address.
Condition codesGeneral-purpose registers: can be assigned to a variety of functions by the programmer. Sometimes their use within the instruction set is orthogonal to the operation. That is, any general-purpose register can contain the operand for any opcode.
This provides true general-purpose register use. Often, however, there are restrictions. For example, there may be dedicated registers for floating-point and stack operations. In some cases, general-purpose registers can be used for addressing functions (e.g.
Register indirect, displacement). In other cases, there is a partial or clean separation between data registers and address registers.Data registers may be used only to hold data and cannot be employed in the calculation of an operand address.Address registers may themselves be somewhat general purpose, or they may be devoted to a particular addressing mode. Examples include the following:. Segment pointers: In a machine with segmented addressing, a segment register holds the address of the base of the segment. There may be multiple registers: for example, one for the operating system and one for the current process. Index registers: These are used for indexed addressing and may be autoindexed.
Stack pointer: If there is user-visible stack addressing, then typically the stack is in memory and there is a dedicated register that points to the top of the slack. This allows implicit addressing; that is, push, pop, and other slack instructions need not contain an explicit stack operand.Condition codes register (also referred to as flags): Condition codes are bits set by the CPU hardware as the result of operations. For example, an arithmetic operation may produce a positive, negative, zero, or overflow result. In addition to the result itself being stored in a register or memory, a condition code is also set. The code may subsequently be tested as part of a conditional branch operation.
Computer Parts And Their Functions Pdf
Control and Status RegistersThere are a variety of CPU registers that are employed to control the operation of the CPU. Most of these, on most machines, are not visible to the user. Some of them may be visible to machine instructions executed in a control or operating system mode.Of course, different machines will have different register organizations and use different terminology.