Computer Architecture & Assembly
8 notes
Some notes are currently available only in Chinese. English translations are shown when available.
- 1.1 Computer Architecture Fundamentalshistorical
A map of the CPU, registers, memory hierarchy, caches, storage, DMA, and assembly concepts used to understand how software executes on hardware.
- 1.2 CPUhistorical
A concise introduction to CPUs as instruction-execution engines and the role of registers, pipelines, cores, and the memory hierarchy.
- 1.3 CPU Registershistorical
x86-64 register roles: general-purpose registers, stack/frame pointers, RIP, flags, SIMD registers, and ABI-dependent calling conventions.
- 1.4 Direct Memory Access (DMA)historical
How DMA lets devices transfer data to and from memory without having the CPU copy each byte, including descriptors, interrupts, and cache/IOMMU considerations.
- 2.1 CPU Caches, Coherence, and Memory Orderinghistorical
CPU cache hierarchy, cache lines, MESI-style coherence, store buffers, invalidation handling, memory ordering, and the role of fences.
- 2.2 Main Memoryhistorical
Main memory as byte-addressable volatile storage, endianness, alignment, locality, and its place between CPU caches and persistent storage.
- 2.3 Persistent Storage vs. Memoryhistorical
A qualitative comparison of DRAM, SSDs, and HDDs across latency, throughput, capacity, cost, persistence, and sequential vs. random access.
- 3.1 Assembly Languagehistorical
An x86-64 assembly primer covering AT&T syntax, registers, addressing, instructions, stack frames, calls/returns, ABIs, and disassembly of compiled programs.