Instruction execution has 5 basic stages:
1. Fetch instruction:
The task of reading the next instruction from memory into the instruction register.
2. Decode instruction:
The task of determining what operation the instruction on the instruction register represents. Ex. add, move
3. Fetch oprands:
The task of moving the instructions operands data into appropriate register.
4. Execute operation:
The task of feeding the appropriate registers through the ALU and back into an appropriate register.
5. Store results:
The task of writing a register into memory.