Semester Schedule
The schedule will be flexible as we cover each topic. We might spend some extra time on topics, so we will update the schedule as we progress through the semester.
Mtg | Date | Topic | Deadlines |
---|---|---|---|
Wed | 08/27/2025 | Introduction Slides: Hott (blank) - Xinyao (blank) | |
Fri | 08/29/2025 | Boolean algebra Readings & Resources: Booleans (first 2 sections) Slides: Hott (blank) - Hott (notes) - Xinyao (blank) - Xinyao (notes) | Quiz 0 (due Sun) |
Mon | 09/01/2025 | binary arithmetic, ssh Readings & Resources: Bits Slides: Hott (blank) | |
LAB 1 | 09/02/2025 | ssh, bash, and the command line | |
Wed | 09/03/2025 | binary arithmetic Readings & Resources: Bits Slides: Hott (blank) | |
Fri | 09/05/2025 | bitwise Readings & Resources: Bits Slides: Hott (blank) | Quiz 1 (due Sun) |
Mon | 09/08/2025 | floating point Readings & Resources: Booleans (Bit-wise) | |
LAB 2 | 09/09/2025 | hex editor | |
Wed | 09/10/2025 | adder; clocks Readings & Resources: Booleans (Fancier Logic) | |
Fri | 09/12/2025 | clocks, registers Readings & Resources: Fancier Logic - Components | Quiz 2 (due Sun) |
Mon | 09/15/2025 | code and circuits Readings & Resources: Components | Homework 1 due |
LAB 3 | 09/16/2025 | circuits | |
Wed | 09/17/2025 | building to a computer Readings & Resources: Designing a Processor | |
Fri | 09/19/2025 | fetch-decode-execute, ISA Readings & Resources: Designing a Processor | Quiz 3 (due Sun) |
Mon | 09/22/2025 | writing machine code Readings & Resources: Designing a Processor | Homework 2 due |
LAB 4 | 09/23/2025 | simulator | |
Wed | 09/24/2025 | writing machine code Readings & Resources: Designing a Processor | |
Fri | 09/26/2025 | writing machine code Readings & Resources: Designing a Processor | Quiz 4 (due Sun) |
Mon | 09/29/2025 | variables, arrays, ISAs | Homework 3 due |
LAB 5 | 09/30/2025 | programming in binary | |
Wed | 10/01/2025 | review | |
Fri | 10/03/2025 | Midterm 1 | |
Mon | 10/06/2025 | ISAs, stack pointer, backdoors, adjacency and pointers Readings & Resources: Storing Data | |
LAB 6 | 10/07/2025 | git, programming in assembly | |
Wed | 10/08/2025 | addressing modes, endianness, assembly Readings & Resources: Storing Data | |
Fri | 10/10/2025 | x86-64 assembly, functions, compilation Readings & Resources: x86-64 Summary | Homework 4 due |
Mon | 10/13/2025 | Fall Reading Days | |
Wed | 10/15/2025 | x86-64 assembly, debugger overview | |
Fri | 10/17/2025 | the stack, x86-64 examples | Quiz 5 (due Sun) |
Mon | 10/20/2025 | patents, assembly examples Readings & Resources: Complation | Homework 5 due |
LAB 7 | 10/21/2025 | assembly/C puzzle (TBD) | |
Wed | 10/22/2025 | copyrights, patents, stack, lea Readings & Resources: Complation - C Reference | |
Fri | 10/24/2025 | compilation, C introduction Readings & Resources: Wikipedia - C Reference | Quiz 6 (due Sun) |
Mon | 10/27/2025 | C introduction Readings & Resources: Wikipedia - C Reference | Homework 6 due |
LAB 8 | 10/28/2025 | programming in C (TBD) | |
Wed | 10/29/2025 | C introduction | |
Fri | 10/31/2025 | C introduction | Quiz 7 (due Sun) |
Mon | 11/03/2025 | C Introduction | Homework 7 due |
Tue | 11/04/2025 | Election Day | |
Wed | 11/05/2025 | review | |
Fri | 11/07/2025 | Midterm 2 | |
Mon | 11/10/2025 | C Introduction, directives | |
LAB 9 | 11/11/2025 | programming in C (TBD) | |
Wed | 11/12/2025 | C Introduction, memory, malloc and free Readings & Resources: Memory | |
Fri | 11/14/2025 | switch, header files, memory | Quiz 8 (due Sun) |
Mon | 11/17/2025 | malloc examples, memory errors Readings & Resources: Man and Library Conventions | Homework 8 due |
LAB 10 | 11/18/2025 | memory and memory errors (TBD) | |
Wed | 11/19/2025 | memory, manual pages | |
Fri | 11/21/2025 | memory, string.h, C std library conventions | Quiz 9 (due Sun) |
Mon | 11/24/2025 | string.h, C std library conventions | Homework 9 due |
LAB 11 | 11/25/2025 | args and inputs (TBD) | |
Wed | 11/26/2025 | Thanksgiving Recess | |
Fri | 11/28/2025 | Thanksgiving Recess | |
Mon | 12/01/2025 | stdio.h and varargs, unistd.h and so on | |
LAB 12 | 12/02/2025 | sockets (TBD) | |
Wed | 12/03/2025 | unistd.h and so on | |
Fri | 12/05/2025 | buffer overrun, reporting exploits, memory errors Readings & Resources: Memory - CVE | Quiz 10 (due Sun) |
Mon | 12/08/2025 | buffer overrun, reporting exploits, finale | Homework 10 due |
LAB 13 | 12/09/2025 | (TBD) | |
Fri | 12/12/2025 | Final Exam | 7-10pm |