Part of Phase 5: Rebuilding Technology
Computing runs the full stack from binary logic to a filesystem. Two label pairs needed disambiguation: “Instruction Set” versus “Instruction Sets,” and a title/slug mismatch where the article titled “Programming” sits at slug programming-fundamentals and the one titled “Programming Fundamentals” sits at slug programming — both relabeled below to match their real content.
Basic Computing, Number Systems, Binary Counting, Binary Arithmetic, Binary Encoding, Binary Values, Hex and Octal, Basic Logic Gates, Logic Operations, Von Neumann Design, and Computer Architecture cover the logic a computer is built from. Binary isn’t arbitrary for digital circuits — it’s the natural fit for components that only hold two stable states — and NAND and NOR alone are universal, able to build any other logic gate.
Instruction Set, Instruction Sets, Opcodes and Operands, Addressing Modes, Arithmetic Operations, Conditional Jumps, Registers, Register, The Stack, Memory Hierarchy, and Memory Systems cover how a CPU actually executes. The 6502 behind the Apple II and Commodore 64 shows how few instructions a real machine can run on, and the ALU never touches memory directly — values load into registers first, then get stored back.
Machine Code, Assembly Language, Hand Assembly, Mnemonics, Labels and Symbols, The Assembler, Subroutines, and Data Movement cover programming at the lowest level. Before any assembler program exists, the first code has to be hand-assembled, opcodes looked up manually and entered through a front panel, and building an assembler itself needs five parts run in two passes to resolve jumps.
Programming Fundamentals, Programming Concepts, Higher-Level Languages, BASIC, Forth, Compilers, Interpreters, Control Flow, Loops, Strings, Arrays, Data Structures, and Linked Lists cover programming above assembly. Forth’s entire interpreter, compiler, and library fits in under 1 KB of code, and writing a complex program in assembly resembles writing a novel on a typewriter that only produces single letters.
Common Bug Types, Debugging, Memory Dump, and Stepping Through Code cover finding what’s wrong. With no interactive debugger, no backtraces, and no memory sanitizer, debugging embedded hardware comes down to printed bytes and a working mental model.
Core Memory, Dynamic RAM, Static RAM, and ROM Types cover working memory technology. Core memory, wound from ferrite toroids, ran computing from ENIAC through the early Apollo program with no semiconductor fabrication at all.
Storage Concepts, Data Storage, Volatile vs Persistent Storage, Magnetic Storage, Magnetic Tape, Magnetic Disk, Magnetic Drum, Magnetic Recording Principles, Optical Storage, Optical Principles, CD Technology, DIY Optical Storage, Paper-Based Storage, Punched Cards, Punched Tape, Card/Tape Reader, and Capacity Units cover long-term storage, the largest cluster. Magnetic tape has outlasted drums, punched cards, floppy disks, and optical discs as the archival standard since 1951, and Hollerith’s punched cards predate the digital computer by sixty years. Memory Addressing explains how n address bits name 2ⁿ locations, so 16 bits reach 65,536 bytes.
File Systems, Flat File System, Hierarchical Directories, and Space Allocation cover organizing what’s stored. A flat file system is implementable in under 200 lines of code, but a directory of 200 programs becomes unmanageable fast without hierarchy.
Input/Output Systems, Keyboard Input, Display Output, and Frequency Response cover connecting a human to the machine. Bridging a processor running at millions of cycles a second with a keyboard at human speed is the real engineering problem behind every I/O design choice.
Binary and Logic Fundamentals
The logic a computer is built from, before any instruction runs.
- Basic Computing
- Number Systems
- Binary Counting
- Binary Arithmetic
- Binary Encoding
- Binary Values
- Hex and Octal
- Basic Logic Gates
- Logic Operations
- Von Neumann Design
- Computer Architecture
CPU and Instructions
How a processor actually executes one instruction after another.
- Instruction Set: Hardware-Software Contract
- Instruction Sets: RISC vs CISC
- Opcodes and Operands
- Addressing Modes
- Arithmetic Operations
- Conditional Jumps
- Registers
- Register
- The Stack
- Memory Hierarchy
- Memory Systems
Assembly and Machine Code
Programming at the lowest level a human can reasonably work at.
- Machine Code
- Assembly Language
- Hand Assembly
- Mnemonics
- Labels and Symbols
- The Assembler
- Subroutines
- Data Movement
Higher-Level Programming
Everything built on top of assembly: languages, control flow, and data structures.
- Programming Fundamentals
- Programming Concepts
- Higher-Level Languages
- BASIC
- Forth
- Compilers
- Interpreters
- Control Flow
- Loops
- Strings
- Arrays
- Data Structures
- Linked Lists
Debugging
Finding what’s wrong with no interactive debugger to lean on.
Memory Technology
The working memory a running program actually uses.
Storage Media
Long-term storage, from punched paper to magnetic and optical discs.
- Storage Concepts
- Data Storage
- Volatile vs Persistent Storage
- Magnetic Storage
- Magnetic Tape
- Magnetic Disk
- Magnetic Drum
- Magnetic Recording Principles
- Optical Storage
- Optical Principles
- CD Technology
- DIY Optical Storage
- Paper-Based Storage
- Punched Cards
- Punched Tape
- Tape Reader
- Capacity Units
- Memory Addressing
File Systems
Organizing what’s stored so a name finds the right blocks on disk.
Input/Output
Connecting a human, at human speed, to a processor running millions of times faster.