🏗 Work
Contents
Lecture Preparation
Lab Preparation
Assignments
- Intros: Introduce yourself.
-
- assign: Wednesday 3 September
- due: Friday 5 September
- Gates: Work with digital logic gates.
-
- assign: Wednesday 3 September
- due: Wednesday 10 September
- Zero: Starting from scratch in CS 240.
-
- assign: Monday 8 September
- due: Friday 12 September
- Bits: Manipulate data with bit-level operations.
-
- assign: Friday 12 September
- checkpoint: Wednesday 17 September
- due: Thursday 25 September
- Arch: Grow your own processor architecture.
-
- assign: Thursday 25 September
- due: Thursday 9 October
- Pointers: Build a command parser with C pointers and arrays.
-
- assign: Wednesday 15 October
- checkpoint: Wednesday 22 October
- due: Monday 27 October
- x86: Reverse engineer x86 code to navigate an adventure.
-
- assign: Monday 27 October
- checkpoint: Wednesday 5 November
- due: Monday 10 November
- Buffer: Smash the stack to understand calling conventions and security concerns.
-
- assign: Monday 10 November
- due: Monday 17 November
- Concurrency: Explore the process model.
-
- assign: Monday 17 November
- due: Monday 24 November
- Malloc: Build a memory allocator.
-
- assign: Monday 24 November
- checkpoint: Friday 5 December
- due: Sunday 14 December
Exams
- HW Exam: Computational Building Blocks
-
- info: Monday 6 October
- inclass: Thursday 16 October
- ISA Exam: Hardware-Software Interface
-
- info: Thursday 4 December
- inclass: Wednesday 10 December
Extra Fun
Parts of these assignments will be used in lab activities, but completing them in full is not required this semester. They are linked here if you are curious to explore further.
- Cache: Use performance impact to reveal cache dimensions.