🏗 Work
Contents
Lecture Preparation
Lab Preparation
Assignments
- Intros: Introduce yourself.
-
- assign: Tuesday 1 September
- due: Friday 4 September
- Gates: Work with digital logic gates.
-
- assign: Friday 4 September
- checkpoint: Wednesday 9 September
- due: Monday 14 September
- Zero: Starting from scratch in CS 240.
-
- assign: Tuesday 8 September
- checkpoint: Friday 11 September
- due: Tuesday 15 September
- Bits: Manipulate data with bit-level operations.
-
- assign: Tuesday 15 September
- checkpoint: Friday 18 September
- due: Friday 25 September
- Arch: Grow your own processor architecture.
-
- assign: Sunday 27 September
- checkpoint: Wednesday 30 September
- due: Tuesday 6 October
- Pointers: Solve memory problems with C pointers and arrays.
-
- assign: Thursday 8 October
- checkpoint: Friday 16 October
- due: Friday 23 October
- Commands: Build on your pointer skills to build a shell command parser
-
- assign: Friday 23 October
- due: Monday 2 November
- x86: Reverse engineer x86 code to navigate an adventure.
-
- assign: Monday 2 November
- due: Friday 13 November
- Buffer: Smash the stack to understand calling conventions and security concerns.
-
- assign: Friday 13 November
- due: Monday 23 November
- Malloc: Build a memory allocator.
-
- assign: Monday 16 November
- checkpoint: Friday 4 December
- due: Sunday 13 December
Exams
- HW Exam: Computational Building Blocks
-
- info: Friday 16 October
- ISA Exam: Hardware-Software Interface
-
- info: Friday 4 December
- inclass: Tuesday 8 December
- inclass: Wednesday 9 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.
