Register Machines
A register is an easily accessible place on a personal computer that is used for storing keyboard control keys and other input/output signals. Most registers can be either read only or write-protected or have a very small amount of memory, though many registers will contain some hardware commands, and can only be read or written by the computer user. A register file is the virtual memory location for all entries in the keyboard control keys and for input/output (I/O) codes associated with these keys. As a result, when a key is pressed the register is consulted and the appropriate command is provided. When this command is released, the contents of the register are altered and the new value is used for interpreting the pressed key’s events.
Each register has a specific binary instruction set that is accessed and executed from CPU address space via the PPC register interrupt. This means that each instruction depends on the next instruction before it is executed. This instruction set is stored in two locations: a PC register and an ISA register. The PC register holds a constant address for each memory location that is accessed; however, ISA register entries are unique per processor and are unique to each application.
An ISA register may store one of several types of instructions. The PC register holds a constant address for execution of a specific instruction; the CPU also saves one instruction for use at a later time and the ISA register saves one or more instructions that are not used every time execution occurs. Execution of one instruction causes the PC register to become locked so that later instructions cannot be accessed. Instruction retraining is another method of locking a PC register to make instructions more easily executed.
Instructions are entered into a register by using a push-button or a push-lock combination. The register must be non-blank and must contain only numbers, characters, or symbols. One instruction can store one value into one register and another instruction can store a value in another register. In case a register contains a combination of symbols, an accumulator is used to accumulate intermediate results and store them in a register. If all the instructions are executed, the accumulator will be called out and PC register will become the destination address for the result.
Instructions are executed in groups of cycles called instructions per clock cycle. Instructions can store multiple values in a register or a single value. In addition to constant and floating-point accumulators, the CPU includes several arithmetic registers. The most significant memory address register, known as MSR, is the accumulator and is used for arithmetic processing. A floating-point accumulator contains a finite random number between zero and one.
The contents of the memory location and the PC register are compiled by the compiler, along with any external program code. The resulting code is the output of the computer program. The compiler determines the execution of the program by the set of program instructions. Every instruction has a corresponding code that is stored in the CPU register. The contents of the memory location and the PC register are executed by the microprocessor.