Computer Systems
Understand how computers manipulate data to execute programs

-
boolean algebra and logic
Learn the foundations of logical reasoning in computing, including truth tables and De Morgan’s Laws.
-
logic gates and digital circuits
See how Boolean logic is physically implemented with logic gates to build digital systems.
-
the arithmetic logic unit (alu)
Understand how the ALU handles arithmetic and logical operations using combinations of logic gates.
-
sequential logic and memory
Explore how latches and flip-flops form the basis of memory and enable computers to store state.
-
random access memory (ram)
Learn how RAM works using flip-flops and how it provides fast, temporary data storage for running programs.
-
the memory hierarchy
Dive into the structure of memory from registers and caches to RAM and persistent storage.
-
the central processing unit (cpu)
Understand how the CPU manages execution using the fetch-decode-execute cycle and control units.
-
pipelining and parallelism
See how modern CPUs increase performance by overlapping instruction execution and using multiple cores.
-
opcodes and assembly language
Explore how low-level machine instructions are encoded using opcodes and mapped to assembly language.
-
clock cycles and timing
See how computer speed is determined by clock cycles, and how timing coordinates internal operations.
-
buses and input/output (i/o)
Understand how data flows between the CPU, memory, and peripherals using buses and I/O controllers.
-
the birth of programming languages
Discover how higher-level programming languages made software development more accessible and powerful.