5 lessons
The fetch-decode-execute cycle - how a CPU actually runs a program
A CPU never "runs" a program the way you imagine. It repeats one tiny loop, billions of times a second - fetch an instruction, figure out what it means, do it, repeat.
What does an instruction actually look like in memory?
An instruction is just a number. Here's how opcodes and operands pack into that number, and why RISC and CISC machines split the difference between simplicity and flexibility.
The three jobs every instruction set needs to do
Every instruction, in every CPU ever built, falls into one of three families - move data, compute on it, or change what happens next. Here's why that's the whole story.
Addressing modes: how an instruction says where its data actually is
An instruction can't just say "add two numbers" - it has to say exactly where to find them. Every addressing mode is just a different answer to that one question.
Registers, the register file, and what an ISA actually promises
An ISA is a contract, not a circuit. Here's exactly what that contract covers, and how the CPU's small set of registers gets shared across an entire running program.