🏗 Work
Contents
Lecture Preparation
Lab Preparation
Assignments
- Intros: Introduce yourself.
-
- assign: Tuesday 3 September
- due: Friday 6 September
- Gates: Work with digital logic gates.
-
- assign: Tuesday 3 September
- due: Wednesday 11 September
- Zero: Starting from scratch in CS 240.
-
- assign: Monday 9 September
- due: Friday 13 September
- Bits: Manipulate data with bit-level operations.
-
- assign: Friday 13 September
- checkpoint: Tuesday 17 September
- checkpoint: Wednesday 18 September
- due: Thursday 26 September
- Arch: Grow your own processor architecture.
-
- assign: Thursday 26 September
- due: Thursday 3 October
- Pointers: Build a command parser with C pointers and arrays.
-
- assign: Friday 4 October
- checkpoint: Wednesday 16 October
- due: Thursday 24 October
- x86: Reverse engineer x86 code to navigate an adventure.
-
- assign: Wednesday 23 October
- checkpoint: Tuesday 5 November
- due: Monday 11 November
- Buffer: Smash the stack to understand calling conventions and security concerns.
-
- assign: Monday 11 November
- due: Monday 18 November
- Concurrency: Explore the process model.
-
- assign: Monday 18 November
- due: Monday 25 November
- Malloc: Build a memory allocator.
-
- assign: Monday 2 December
- checkpoint: Tuesday 10 December
- checkpoint: Wednesday 11 December
- due: Tuesday 17 December
Exams
- HW Exam: Computational Building Blocks
-
- info: Thursday 26 September
- inclass: Thursday 10 October
- revisions: Thursday 31 October
- ISA Exam: Hardware-Software Interface
-
- info: Monday 2 December
- inclass: Thursday 5 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.