Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


Computer Architecture

via Codecademy


Learn about the rules, organization of components, and processes that allow computers to process instructions.

In this course, you’ll learn about what the main physical components of a computer are, why 0 and 1 are such important numbers within computing, how instruction set architecture (ISA) establishes communication between the hardware and software components of a computer, and more. Starting from understanding how a computer works to learning about data-level parallelism, this course will teach you computer architecture with a combination of lessons, articles, quizzes, problem sets, and projects. At the end of the course, you'll be prompted to create your own CPU simulator in Python.


  • Introduction to Computer Architecture: Get started with computer architecture by learning about how a computer works, the binary numbering system, and logic gates.
    • Course Syllabus
    • How Computers Work
    • Binary Numbering System
    • Binary Numbering System Quiz
    • Learn: Logic Gates
    • Creating an Adder Circuit

  • Instruction Set Architecture: Learn about instruction set architectures and how they fit into the topic of computer architecture.
    • Introduction to Instruction Set Architecture
    • Instruction Set Architecture
    • Instruction Set Architecture
    • Ultra Super Calculation Computer

  • Assembly Language: Learn about Assembly languages and their role in computer architectures.
    • Assembly Language
    • Assembly Language Quiz
    • Assembly Language Problem Set

  • Cache: Learn about cache memory by implementing a simulation cache complete with cache reads, writes, replacement policies, and associativity.
    • Cache
    • Cache Memory
    • Cache Problem Set

  • Instruction Parallelism: Learn about the different methods of processing instructions efficiently!
    • The Instruction Cycle
    • Instruction Pipelining
    • Hazards of Instruction Pipelining
    • Superscalar Architecture
    • Instruction Parallelism
    • Instruction Parallelism Problem Set

  • Data-Level Parallelism: Explore different approaches to achieve higher data throughput with data-level parallelism.
    • Data-Level Parallelism
    • Data-Level Parallelism
    • Data-Level Parallelism Problem Set


Start your review of Computer Architecture

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.