Computer Architecture
Offered By: Codecademy
Course Description
Overview
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.
##
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.
Syllabus
- Introduction to Computer Architecture: Get started with computer architecture by learning about how a computer works, the binary numbering system, and logic gates.
- Article: Course Syllabus
- Lesson: How Computers Work
- Lesson: Binary Numbering System
- Quiz: Binary Numbering System Quiz
- Lesson: Learn: Logic Gates
- Project: Creating an Adder Circuit
- Instruction Set Architecture: Learn about instruction set architectures and how they fit into the topic of computer architecture.
- Article: Introduction to Instruction Set Architecture
- Lesson: Instruction Set Architecture
- Quiz: Instruction Set Architecture
- Project: Ultra Super Calculation Computer
- Assembly Language: Learn about Assembly languages and their role in computer architectures.
- Lesson: Assembly Language
- Quiz: Assembly Language Quiz
- Article: Assembly Language Problem Set
- Cache: Learn about cache memory by implementing a simulation cache complete with cache reads, writes, replacement policies, and associativity.
- Lesson: Cache
- Quiz: Cache Memory
- Article: Cache Problem Set
- Instruction Parallelism: Learn about the different methods of processing instructions efficiently!
- Article: The Instruction Cycle
- Lesson: Instruction Pipelining
- Article: Hazards of Instruction Pipelining
- Article: Superscalar Architecture
- Quiz: Instruction Parallelism
- Article: Instruction Parallelism Problem Set
- Data-Level Parallelism: Explore different approaches to achieve higher data throughput with data-level parallelism.
- Lesson: Data-Level Parallelism
- Quiz: Data-Level Parallelism
- Article: Data-Level Parallelism Problem Set
Taught by
Zoe Bachman
Related Courses
Computer ArchitecturePrinceton University via Coursera Introduction to Computer Architecture
Carnegie Mellon University via Independent 计算机组成 Computer Organization
Peking University via Coursera Computation Structures 2: Computer Architecture
Massachusetts Institute of Technology via edX Embedded Systems
Georgia Institute of Technology via Udacity