March 29 |
[Welcome!]; [Binary & Hexadecimal] Read CSPP: § 1.4.1 (p. 8-10) learning block notes
|
March 31 |
[Bits, Bytes], and C Pointers Read Pointer Basics and The 5-minute Guide to C Pointers, watch this silly video learning block notes
|
April 2 |
[C: Data Representation]; [C: Memory Management] Read The Descent to C
|
April 5 |
Integer Representation Read CSPP: § 2.2.1 (p. 60-62) learning block notes
|
April 7 |
Integer Arithmetic Read CSPP: § 2.2.8 (p. 83-84) learning block notes
|
April 9 |
Programming With Bits Read CSPP: § 2.1.7--2.1.9 (p. 54-58) learning block notes
|
April 12 |
IEEE Floating Point Read CSPP: § 2.4.2 (p. 112-115)
|
April 14 |
Introduction to x86-64 Assembly CPSS: § 3.4 through 3.4.1 (p. 179-181) learning block notes
|
April 16 |
Arithmetic in x86-64 Assembly No reading, but review figures 3.2, 3.3, and 3.10 (p. 180, 181, 192) learning block notes
|
April 19 |
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 learning block notes
|
April 21 |
x86-64 Control Flow: Loops and Switch Statements Read CSPP § 3.6.3 to learn about indirect jumps
|
April 23 |
Data Structure Representation: Arrays Read CSPP § 3.8.2 on pointer arithmetic learning block notes
|
April 26 |
Data Structure Representation: Structs No reading
|
April 28 |
Memory Layout and The Stack Make sure you understand figure 3.27 (p. 243) learning block notes
|
April 30 |
Implementing Procedure Calls Read CSPP: § 3.7.4 and 3.7.5 (p. 248-252) learning block notes
|
May 5 |
Buffer Overflow Attacks Read the Lab 3 writeup
|
May 7 |
The Memory Hierarchy Read CSPP § 6.2 about locality learning block notes
|
May 10 |
Caching: Basic Principles Read CSPP § 6.4.1 learning block notes
|
May 12 |
Caching: Associativity and Lookup Make sure you understand CSPP figures 6.28 through 6.37 learning block notes, cache simulator
|
May 14 |
The Process Model No reading
|
May 17 |
Dynamic Memory Allocation: malloc and free No reading learning block notes
|
May 19 |
Dynamic Memory Allocation: Free Lists Read CSPP § 9.9.6 learning block notes
|
May 21 |
Lab 5 Overview; Virtual Memory: Four Problems Read the Lab 5 writeup Lab 5 intro
|
May 24 |
Virtual Memory: Addressing Read CSPP § 9.3 (p. 805–810) learning block notes exception notes (OPTIONAL)
|
May 26 |
Virtual Memory: Optimization No reading learning block notes
|
May 28 |
Java vs C No reading
|
May 31 |
Concurrency No reading memory error worksheet solutions
|
June 2 |
Victory lap No reading Gradescope demo
|