Assignments
topic denotes readings and class activities, listed separately on the working schedule.
lab denotes pre-lab assignments and lab activities, listed separately on the lab web page.
pencil denotes written assignments, listed below.
code denotes applied assignments, listed below.
- Search Diagonally: Practice office-finding, introduce yourself, and dissect a computer.
-
- assign: Tuesday, 4 September
- due: Friday, 7 September
- Entrance Gates: pencil Work with digital logic gates.
-
- assign: Tuesday, 4 September
- due: Tuesday, 11 September
- Integer Arithmancy: pencil Practice number representation and computer arithmetic.
-
- assign: Tuesday, 11 September
- due: Tuesday, 18 September
- Bit Transfiguration: code Transfigure data with bit-level operations.
-
- assign: Monday, 17 September
- due: Tuesday, 25 September
- Circuit Herbology: pencil Grow logic circuits and processor components.
-
- assign: Tuesday, 25 September
- checkpoint: Friday, 28 September
- due: Tuesday, 2 October
- Pensieve Processing: pencil Inspect and manipulate memories and a processor design.
-
- assign: Tuesday, 2 October
- checkpoint: Friday, 5 October
- due: Thursday, 11 October
- Pointer Potions: code Brew a command parser with C pointers and arrays.
-
- assign: Monday, 15 October
- checkpoint: Tuesday, 23 October
- due: Friday, 26 October
- x86 Runes: code Reverse engineer compiled x86 runes to recover the Sourceror's Code.
-
- assign: Monday, 29 October
- checkpoint: Friday, 2 November
- due: Tuesday, 6 November
- Dark Buffer Arts: code Smash the stack to understand calling conventions and security concerns.
-
- assign: Tuesday, 6 November
- checkpoint: Tuesday, 13 November
- due: Friday, 16 November
- Cache Divination: pencil Use performance impact to reveal cache dimensions.
-
- assign: Friday, 16 November
- work: Monday, 19 November
- due: Tuesday, 20 November
- Shell Spells: code Build a shell to explore the process model.
-
- assign: Friday, 30 November
- work: Monday, 3 December
- checkpoint: Friday, 7 December
- due: Tuesday, 11 December
- Remembrallocator: code Implement a memory allocator.
-
- assign: Monday, 10 December
- due: Thursday, 20 December