In the first phase of the cycle, the processor fetches an instruction from memory. The IR now holds a single machine instruction, encoded as a binary number. The processor decodes the value in the IR in order to figure out which operations to perform in the next stage. In the execution stage the processor actually carries out the instruction. At the end of this phase the machine starts the cycle over again by entering the fetch phase for the next instruction.
Most machines have a set of general purpose registers that can be used for holding such operands.
The data transfer instructions move data from one location to another, for example between registers, or from main memory to a register, or between two different memory locations. Control instructions modify the order in which instructions are executed. The branch operation is performed by simply setting the PC to the address of the instruction at the top of the loop. The timing of the fetch, decode, and execute phases depends on the internal construction of the processor and the complexity of the instructions it executes. The quantum time unit for measuring operations is known as a clock cycle .