Content

Week 1
Tue: 08/30 Introduction to Computer Organization
Slides Printable
Reference:
COD §§1.1–1.3
Thu: 09/01 Introduction to MIPS
Slides Printable
Reference:
COD §§2.1–2.3
COD §§B.9–B.10
Week 2
Tue: 09/06 Registers, Instructions, and System Calls
Slides Printable
Reference:
COD §§2.1–2.3
COD §§B.9–B.10
Thu: 09/08 Numbers and Machine Code
Slides Printable
Reference:
COD §§2.4–2.5
Week 3
Tue: 09/13 Machine Code, Logical Operations, and Conditionals
Slides Printable
Reference:
COD §§2.6–2.7
Due:
Assignment 1
Thu: 09/15 Branching and Arrays
Slides Printable
Reference:
COD §§2.7,2.10
Due:
Assignment 2
Week 4
Tue: 09/20 Arrays and Procedures
Slides Printable
Reference:
COD §2.8–2.10
Thu: 09/22 Non-Leaf Procedures and the System Stack
Slides Printable
Reference:
COD §2.8–2.10
Due:
Assignment 3
Week 5
Tue: 09/27 Exam/Assignment Work day (attendance optional)
Due:
Assignment 4
Thu: 09/29 Gates and Truth Tables
Slides Printable
Reference:
How Does a Transistor Work?
COD §§C.1–C.3
Due:
Exam 1
Week 6
Tue: 10/04 Combinational Logic
Slides Printable
Reference:
COD §C.3
Thu: 10/06 Constructing an Adder and an ALU
Slides Printable
Reference:
COD §C.5
Week 7
Tue: 10/11 Subtraction, Sequential Logic
Slides Printable
Reference:
COD §§C.5,C.7–C.8
Due:
Assignment 5
Thu: 10/13 Sequential Logic
Slides Printable
Reference:
COD §§C.7–C.8
Week 8
Thu: 10/20 Memory
Slides Printable
Reference:
COD §C.9,§4.1
Due:
Assignment 6
Week 9
Tue: 10/25 Exam Work Day, no class meeting
Due:
Exam 2
Thu: 10/27 The Datapath
Slides Printable
Reference:
COD §§4.1–4.3
Week 10
Tue: 11/01 Control
Slides Printable
Reference:
COD §4.4
Thu: 11/03 Instruction Execution Stages
Slides Printable
Reference:
COD §4.5
Week 11
Tue: 11/08 Pipelining
Slides Printable
Reference:
COD §§4.5–4.8
Due:
Assignment 7
Thu: 11/10 Pipeline Hazards, Caching
Slides Printable
Reference:
COD §4.7–4.8, 5.1–5.4
Week 12
Tue: 11/15 Introduction to C and the Command Line
Slides Printable
Reference:
C for Python Programmers
Thu: 11/17 The Basics of C
Slides Printable
Reference:
C for Python Programmers
Learn the Basics tutorials
Week 13
Tue: 11/22 Exam Work Day, no class meeting
Due:
Exam 3
Week 14
Tue: 11/29 Strings, Arrays, and Pointers
Slides Printable
Reference:
Strings tutorial
Arrays tutorial
Pointers tutorial
Thu: 12/01 Dynamic Memory Allocation
Slides Printable
Reference:
Dynamic Allocation tutorial
Arrays and Pointers tutorial
Due:
Assignment 8
Week 15
Tue: 12/06 Structs and Files
Slides Printable
Reference:
Structures tutorial
File I/O tutorial
Thu: 12/08 C Wrap Up
Slides Printable
Reference:
Structures tutorial
File I/O tutorial
Due:
Assignment 9
Week 16
Tue: 12/13 Finals Week, no class meeting
Due:
Exam 4