The computer hierarchy
There are 7 levels we can study a computer at.
| Level | Name | Contains |
|---|---|---|
| 6 | User | Executable Programs |
| 5 | High-Level Language | Python, Java, C++ |
| 4 | Assembly Language | Assembly Code |
| 3 | System Software | Operating System |
| 2 | Machine | Instruction Set Architecture |
| 1 | Control | Microcode or Hardwired |
| 0 | Digital Logic | Circuits or Logic Gates |
Acronym: U HAS MCDonalds
6. User Level
This is the applications level, users typically interact with this level. At this level, users interact with different programs such as browsers, editors and games.
5. High-Level Language Level
This is the level at which programs written in languages such as Python, Java, and C++ exist. Programs written in high-level languages must first be compiled or interpreted then the assembly code can be executed.
4. Assembly Language Level
High-Level program instructions are translated into Assembly instructions which are then translated 1:1 to machine code (at level 2).
3. System Software Level
System software controls executing multiple processes on the system and protects system resources (e.g. from malicious software). These complex systems are referred to as operating systems.
2. Machine Level
This is also referred to as the Instruction Set Architecture, it consists of instructions that are specific to the architecture of the machine. They are not portable. Programs written in machine code do not need compilers, interpreters or assemblers.
1. Control Level
A control unit decodes and executed instructions. These can be microprogrammed or hardwired.
- A microprogram is a program written in a low-level language that is implemented by the hardware.
- Hardwired CUs consist of hardware that directly executed machine instructions.
0. Digital Logic
This level consists of digital circuits and microchips.
- Digital circuits consists of gates and wires.
- Physical components (such as transistors and resistors) implement mathematical logic.
- These are a requirement for all the other levels.