Skip to content

Ten levels

The levels of a computer

A computer is a stack of abstraction levels. Explore each one, from the apps you use down to the electrons.
10 levels of abstraction84 chapters planned
  1. L0Applications & the userWhat you see and do: clicking, typing, loading a page, and what each of those really sets in motion.
  2. L1Problems & algorithmsBefore any language: what a computation is, how to solve a problem step by step, and how to measure the cost.
  3. L2Programming languagesWhat you write: variables, functions, pointers, and what a compiler turns them into.
  4. L3Assembly languageOne line per instruction: registers, flags, jumps: the view debuggers and disassemblers give you.
  5. L4Operating systemThe layer that turns one CPU into many processes: virtual memory, system calls, files.
  6. L5Instruction set architectureThe contract between software and silicon: instruction formats, encodings, addressing modes.
  7. L6MicroarchitectureHow one instruction becomes fetch, decode, execute: datapath, buses, caches and pipelines.
  8. L7Digital logicGates, adders, the ALU, flip-flops and memory cells, where 0 and 1 become arithmetic.
  9. L8Devices & chipsTransistors as switches, CMOS gates, how chips are made, and the storage and I/O devices built from them.
  10. L9Physics of computingThe real bottom: electrons, semiconductors and the field effect: how a bit is physically stored and moved, and the limits physics sets.