This computer architecture uses a computer program stored in memory to control a computer. The famous mathematician John von Neumann proposed it and helped make the first implementation, the Edsac, at the University of Manchester.
A von Neumann Architecture computer performs or emulates the following sequence of steps:
- Fetch the next instruction from memory at the address in the program counter.
- Add 1 to the program counter.
- Decode the instruction using the control unit. The control unit commands the rest of the computer to perform some operation. The instruction may change the address in the program counter, permitting repetitive operations. The instruction may also change the program counter only if some arithmetic condition is true, giving the effect of a decision, which can be calculated to any degree of complexity by the preceding arithmetic and logic.
- Go back to step 1.
Merchant computers never have a purse von Neumann architecture. Most computers add another step to check for interrupts, electronic events that could occur at any time. An interrupt resembles the ring of a telephone, calling a person away from some lengthy task. Interrupts let a computer do other things while it waits for events.
Von Neumann computers spend a lot of time moving data to and from the memory, and this slows the computer. So, engineers often separate the bus into two or more busses, usually one for instructions, and the other for data.