CS 208 Spring 2020
Topics

Subscribe to this calendar (google, iCal, etc.)

DateDescription
April 6 Introduction; Binary & Hexadecimal
Read CSPP: § 1.4.1 (p. 8-10)
homework
April 8 C: Programming With Memory
Read Pointer Basics and The 5-minute Guide to C Pointers, watch this silly video
homework
April 10 C: Data Representation
Read The Descent to C
homework
April 13 Integer Representation
Read CSPP: § 2.2.1 (p. 60-62)
homework
April 15 Integer Arithmetic
Read CSPP: § 2.2.8 (p. 83-84)
homework
April 17 Programming With Bits
Read CSPP: § 2.1.8 (p. 56-57)
homework
April 20 IEEE Floating Point
Read CSPP: § 2.4.2 (p. 112-115)
homework
April 22 Introduction to x86-64 Assembly
Read CSPP: § 3.3, 3.4 through 3.4.3 (p. 177-188)
homework
April 24 Arithmetic in x86-64 Assembly
No reading, but review figures 3.2, 3.3, and 3.10 (p. 180, 181, 192)
homework
April 27 x86-64 Control Flow: Conditionals
Review CSPP figures 3.13, 3.14, and 3.15 (p. 202, 203, 206), (OPTIONAL) read CSPP section 3.6.6
homework
April 29 Reverse Engineering with gdb
Read CSPP section 3.6.3 to learn about indirect jumps
homework
May 1 x86-64 Control Flow: Loops and Switch Statements
No assigned reading
homework
May 6 Memory Layout and The Stack
Make sure you understand figure 3.27 (p. 243)
homework
May 8 Implementing Procedure Calls
Read your classmates posts in the lab 2 check-in forum
homework
May 11 Data Structure Representation: Arrays
Read CSPP section 3.8.2 on pointer arithmetic
homework
May 13 Buffer Overflow Attacks
Read Lab 3 writeup, post questions in Slack
homework
May 15 Data Structure Representation: Structs
No reading
homework
May 18 The Memory Hierarchy
Read CSPP Section 6.2 about locality
homework
May 20 Caching: Basic Principles
Read CSPP Section 6.4.1
homework
May 22 Caching: Associativity and Lookup
Make sure you understand CSPP figures 6.28 through 6.37
homework, cache simulator
May 25 Dynamic Memory Allocation: malloc and free
Read CSPP 9.9.6 to prepare for Wednesday's topic
homework
May 27 Dynamic Memory Allocation: Free Lists
Read the Lab 5 writeup
homework
May 29 Lab 5 Overview; Virtual Memory: Four Problems
Start the lab 5 preparatory exercises
homework
June 1 Virtual Memory: Addressing
Read CSPP Section 9.3 (p. 805–810)
homework
June 3 Virtual Memory: Optimization
No reading
homework