Microprocessors and Microcontrollers
A processor is a state machine wired to a memory bus, and every instruction is a fixed sequence of transfers between them. These topics step through those transfers one clock at a time.
Start from the beginning →8 topics you can watch now, 16 still to come.
How a processor runs
The loop that never stops, and the registers it needs to run it.
- The Fetch–Decode–Execute CycleStart here. Follow one ADD instruction from the program counter to the accumulator, one bus transfer at a time.
- Buses, Registers and FlagsThe address bus width IS the address space — which is why 32-bit systems could never use more than 4 GB, and no operating system could work around it.
- Instruction set groups
- Assembly programs: sorting, searching, delays
The 8085 architecture
A small processor, small enough to hold entirely in your head.
- Addressing ModesOne question — where is the operand? — and each mode is an answer. Indirect addressing is the one that makes arrays, strings and every pointer possible.
- Machine Cycles and TimingWhere an instruction stops being an abstraction and becomes signals with deadlines. Eight pins doing two jobs is why the whole protocol exists.
- Pin diagram in full
- Assembler directives and macros
Interrupts and I/O
How a processor stops looking and lets the world tell it instead.
- InterruptsA million polls per second for five keypresses. Then the same mechanism turns out to carry system calls and page faults too.
- Direct Memory AccessInterrupts stopped the processor asking; every byte still went through it. Take it out of the path — and then explain the stale cache line.
- 8259 interrupt controller in detail
- Memory-mapped vs isolated I/O
The 8086
Segmentation, a queue, and the start of a family still shipping.
- Minimum and maximum mode
- Protected mode and descriptor tables
- Assembler directives and procedures
Peripheral interfacing
The chips around the processor that do the actual work.
- 8255 programmable peripheral interface
- 8253 timer and 8259 interrupt controller
- ADC and DAC interfacing
- Keyboard and display interfacing
Microcontrollers
The whole computer on one chip, designed to be embedded.
- 8051 memory organisation in detail
- Serial communication: UART, SPI and I²C
- ARM Cortex-M programming model
About Microprocessors and Microcontrollers
A microprocessor is where digital logic becomes a machine that follows instructions. The central loop — fetch, decode, execute — is simple enough to state in a sentence and rich enough to occupy the whole subject once you ask how each step actually happens.
Most of the material is about the machine talking to the world outside it. Buses move bytes between the processor and everything else. Addressing modes decide where an operand really lives. Interrupts let a slow, unpredictable external event pull the processor away from what it was doing and, crucially, let it return as if nothing happened.
Timing diagrams are the native language here, and they are exactly the kind of thing that is easier to watch than to read. A bus cycle, an interrupt being acknowledged mid-instruction, a segmented address being resolved — each is shown running rather than drawn still.
What to know first
- Digital Logic Design, particularly registers and buses
- Some assembly or low-level C exposure is helpful, not required
Where it gets used
- Working with microcontrollers in embedded and hobby electronics
- Understanding what an interrupt service routine may and may not do
- Reading a memory map and knowing why peripherals live at those addresses