Computer Architecture Study Guide
This folder contains materials for systematically learning Computer Architecture. You'll understand how computers work, from data representation to CPU architecture, memory systems, and parallel processing.
Target Audience : Developers with basic programming knowledge, those learning CS fundamentals
[Basics] [Intermediate] [Advanced]
│ │ │
▼ ▼ ▼
Computer Overview ───▶ Instruction Set ────▶ Pipelining
│ │ │
▼ ▼ ▼
Data Representation ─▶ Control Unit ───────▶ Cache Memory
│ │ │
▼ ▼ ▼
Logic Gates ─────────▶ CPU Architecture ───▶ Virtual Memory
│ │
▼ ▼
Sequential Logic ───────────────────────────▶ Parallel/Multicore
Programming basics (variables, control flow, functions)
Basic mathematics (binary numbers, logical operations)
At least one language: C or Python
File
Difficulty
Key Topics
01_Computer_System_Overview.md
⭐
Computer history, Von Neumann architecture, hardware components
02_Data_Representation_Basics.md
⭐
Binary, octal, hexadecimal, base conversion
03_Integer_Float_Representation.md
⭐⭐
Two's complement, IEEE 754 floating-point
04_Logic_Gates.md
⭐
AND, OR, NOT, Boolean algebra
05_Combinational_Logic.md
⭐⭐
Adders, multiplexers, decoders
Performance Enhancement Techniques (11-13)
I/O and Parallel Processing (17-18)
Phase 1: Basic Concepts (1 week)
01_Computer_System_Overview → 02_Data_Representation_Basics → 03_Integer_Float_Representation
Phase 2: Digital Logic (1 week)
04_Logic_Gates → 05_Combinational_Logic → 06_Sequential_Logic
Phase 3: CPU Architecture (2 weeks)
07_CPU_Architecture_Basics → 08_Control_Unit → 09_Instruction_Set_Architecture → 10_Assembly_Language_Basics
Phase 4: Performance Enhancement (1-2 weeks)
11_Pipelining → 12_Branch_Prediction → 13_Superscalar_Out_of_Order
Phase 5: Memory Systems (1-2 weeks)
14_Memory_Hierarchy → 15_Cache_Memory → 16_Virtual_Memory
Phase 6: I/O and Parallel Processing (1 week)
17_IO_Systems → 18_Parallel_Processing_Multicore
Phase 7: Modern Topics (1 week)
19_RISC_V_Architecture → 20_Power_Management
# MARS (MIPS Simulator)
# https://courses.missouristate.edu/kenvollmar/mars/
# Logisim (Digital Circuit Simulator)
# https://www.cburch.com/logisim/
# CPU Simulator
# https://cpuvisualsimulator.github.io/
# x86 (Linux)
nasm -f elf64 hello.asm -o hello.o
ld hello.o -o hello
# GCC Assembly Output
gcc -S -O0 program.c -o program.s
Performance Quick Reference
Component
Typical Latency
Register access
~1 cycle
L1 cache
~4 cycles
L2 cache
~10 cycles
L3 cache
~40 cycles
Main memory
~100+ cycles
SSD
~10,000+ cycles
HDD
~10,000,000+ cycles
Folder
Related Content
C_Basics/
Pointers, memory management
Algorithm/
Complexity analysis, cache optimization
Linux/
Processes, memory management
Use Simulators : Implement digital circuits directly in Logisim
Assembly Practice : Write simple programs in assembly language
Cache Analysis : Analyze cache misses using perf or cachegrind
Step-by-Step Understanding : Always solve practice problems in each lesson
Visualization : Understand pipelines, cache operations through diagrams