The CPU fetch-execute cycle
A von Neumann machine has a random-access memory and each successive operation can read or write any memory location, independent of the location accessed by the previous operation and also has a CPU with one or more registers that hold data that are being operated on.
A (non-parallel) CPU executes one instruction at a time. A sequence of instructions is also referred to as a program. On today's computers, data as well as programs reside in memory (this is called von Neumann architecture), the CPU execute following steps as:
1. Compute the address of the next instruction, advise main memory unit to read the data (= instruction) at the selected address (address/control bus)
2. Fetch the instruction into the CPU (data bus)
3. Decode and execute the instruction inside the CPU