CS103
Computer Systems Fundamentals
How data and instructions are represented in bits, and the journey from source code to a running program on hardware.
8 modules · 40 lessons · Practice after every lesson
Take first
Syllabus
Module 1
Information as Bits
- Bits, Bytes, and Positional Number Systems
- Binary and Hexadecimal Conversion
- Unsigned and Signed Integer Encodings
- Overflow and Fixed-Width Arithmetic
- Bitwise Operations and Masks
Module 2
Representing Data
- Characters, Unicode, and Text Encoding
- Floating-Point Representation
- Images, Audio, and Sampling
- Structured Data and Serialization
- Error Detection and Redundancy
Module 3
Digital Logic
- Boolean Algebra and Logic Gates
- Combinational Circuits
- Adders, Multiplexers, and Decoders
- Sequential Logic and State
- Clocks, Registers, and Finite-State Machines
Module 4
Instructions and Execution
- Machine Instructions and Instruction Sets
- Registers and the Arithmetic Logic Unit
- Fetch, Decode, and Execute
- Branches, Loops, and Procedure Calls
- Assembly Language as a Hardware Interface
Module 5
Memory and Storage
- Addresses and Random-Access Memory
- The Storage Hierarchy
- Caches and Locality
- Persistent Storage and Files
- Virtual Memory: A First Model
Module 6
From Source to Running Process
- Compilers, Assemblers, and Interpreters
- Object Files and Linking
- Program Loading
- Processes and Operating-System Services
- System Calls and Privilege Boundaries
Module 7
Input, Output, and Communication
- Devices and Controllers
- Interrupts and Direct Memory Access
- Files, Streams, and Buffers
- Networks as Layered Communication
- Latency, Bandwidth, and Throughput
Module 8
Systems Reasoning
- Abstraction Layers in a Computer
- Performance Bottlenecks and Amdahl’s Law
- Reliability and Fault Models
- Security Boundaries and Least Privilege
- Concurrency and Parallelism: An Introduction
Start Computer Systems Fundamentals.
No setup, nothing to install. Try the first lessons before you sign up.