CS 220 Course Materials, Fall 2021
CS 220 Course Materials
Fall 2021
General
Nand2Tetris Projects
Following Fall Break, Fridays will be used to explore special topics with
in-class labs. See the following section for these labs.
- Introduction: Hello, World Below; Aug. 27, one day
Read:
- Boolean Logic; Aug. 30, three days
Read:
Prepare for the project:
- Boolean Arithmetic; Sept. 8, three days
Read:
Prepare for the project:
- Sequential Logic; Sept. 15, four days
Read:
Prepare for the project:
- Open Day; Sept. 24
- Exam I; Sept. 27
Covering Chapters 1--3.
- Machine Language Programming; Sept. 29, four days
Read:
Prepare for the project:
- Computer Architecture; Oct. 11, five days
Read:
Prepare for the project:
- Assembler; Oct. 25, five days
Read:
Prepare for the project:
- Open Day; Nov. 5
- Exam II; Nov. 8
Covering Chapters 4--6.
- Virtual Machine Translator I; Nov. 10, four days
Read:
Prepare for the project:
- Virtual Machine Translator II; Nov. 29, five days
Read:
Prepare for the project:
In-Class Labs
- Lab 1: Check It Out From The Library, Oct. 22
How does source code become actual executable code?
- Lab 2: It All Depends Upon How You Look At It, Oct. 29
How are other types of data, such as strings and floating point numbers,
represented? How does the CPU know how to interpret bits?
- Lab 3: There's More Than One Way To Do This, Nov. 5
Hack is one example of an instruction set architecture. How does it
compare to two heavyweights -- x86 and ARM?
- Lab 4: Caching Away Data, Nov. 12
How do caches improve main memory access time?
- Lab 5: It's All Virtual, Nov. 19
How does virtual memory give us a main memory that's essentially as large
as secondary storage?
- Lab 6: It's In The Pipeline, Dec. 3
What happens when we split execution of an instruction across multiple
clock cycles?
Last updated September 5, 2022.
Send mail to kelliher[at]goucher.edu
Tom Kelliher