This page lists the material and assignments for each week in the semester. We update the contents on at least a weekly basis. For the past weeks, it is a record of what we have done. For the current week, watch out for updates and changes.
Week 1 : 6/17-6/23 | |
Reading | Chapter 1 (pp 1-16); Chapter 2 (pp 21-42); Chapter 11 (pp. 289-304); Chapter 12 (pp. 307-337); Chapter 13 (pp. 344-366) |
Number Conversions | |
Number Systems and Radix Conversion | |
Lectures | Chapter 1: Welcome Aboard |
Chapter 11: Programming in C | |
Chapter 2: Bits; Data Types; and Operations | |
Chapter 12: Variables and Operators | |
Chapter 13: C Control Structures | |
Assignments | P1: Number Conversion (due 6/20) |
P2: Floating Point Math (due 6/23) | |
Recitations | R0: Hello World |
R1: Number Crunching | |
Quiz 1 - Number representation and Intro to C / R2: C Programming | |
R3: Bit Fields in C | |
Week 2 : 6/24-6/30 | |
Reading | Chapter 14 (pp 378-398); Chapter 16 (pp 427-451); Chapter 19 (pp 497-516); Chapter 18 (pp. 481-493); Chapter 17 (pp. 457-473) |
Lectures | Chapter 15 – Debugging |
Chapter 16 – Pointers and Arrays | |
Chapter 19 – Data Structures | |
Chapter 18 – C Input/Output | |
Chapter 17 – C Recursion | |
ExtraCMaterial | |
Assignments | P3 Stack Trace: (due 6/27) |
P4A Symbol Table part A: (due 6/30) | |
Recitations | Stack Dump |
Quiz 2 - Pointers and Arrays | |
R4: C Structures | |
R4B: Starting P4A | |
Exams | Midterm 1 Review |
Week 3 : 7/1-7/7 | |
Reading | Chapter 4; Chapter 5 (pp 123-145); Chapter 7 (pp 177-190) |
Lectures | Midterm 1 Review |
Chapter 4 - Von Neumann Architecture | |
Chapter 5 - LC-3 Architecture | |
Chapter 6 - LC-3 Programming | |
Assignments | P4B Symbol Table: (due 7/5) |
P5 Some Assembly Required: (due 7/9) | |
Recitations | R5: Debug Valgrind |
R5.1 Java and C | |
Midterm Exam | |
R6: LC-3 Programming Introduction | |
Exams | Midterm 1 Review |
Midterm Exam Wednesday 7/3 in recitation | |
Week 4 : 7/8-7/14 | |
Reading | Chapter 4 (pp 97-111); Chapter 6 (pp 155-171); Chapter 9 (pp 219-240) |
Chapter 10 (pp. 251-258); Chapter 14 (pp. 379-398); Chapter 8 (pp. 199-214) | |
Lectures | Chapter 6 - LC-3 Programming |
Chapter 7 - LC-3 Assembly Code | |
Chapter 9 - TRAP Routines and Subroutines | |
LC3 Stack | |
Assignments | P6A: LC-3 String Library - Part A (due July 12) |
P6B: LC-3 String Library - Part B (due July 15) | |
Recitations | R6: LC-3 Programming Introduction |
R7: More LC-3 Programming | |
Quiz 3 - LC3 | |
R8: The Stack | |
IntAdd.asm recitation example | |
Week 5 : 7/15-7/21 | |
Reading | Chapter 10 (pp. 251-258); Chapter 14 (pp. 379-398); Chapter 8 (pp. 199-214) |
Lectures | Chapter 10 - Stack |
LC3 Instruction Review | |
Technology Trends | |
Memory Hierarchy | |
Midterm 2 Review | |
Assignments | P7: The LC3 Stack (due July 21) |
Recitations | R9: I/O |
P7 help | |
Quiz 4 - LC3 / LC3 Macros | |
LC3 OS Extension / Buffer Overflow | |
Week 6 : 7/22-7/28 | |
Exams | Midterm Exam 2 Monday 7/22 in recitation |
Reading | Chapter 3 |
Lectures | Lecture 22: Logic Circuits |
Lecture 23: Storage Elements & Sequential Circuits | |
Assignments | H1: Combinational Logic and Transistors (due 7/28) |
Recitations | Midterm Exam 2 Monday 7/22 in recitation |
R10: Introduction to Logisim | |
R11: Decrementer | |
Q5 / Object Oriented C | |
Week 7 : 7/29-8/4 | |
Reading | Appendix C |
Lectures | Transistors and State Machines |
Microarchitecture and Register Transfer Notation | |
Memory Hierarchy | |
Caches | |
Assignments | H2: State Machines (due 8/1) |
Recitations | R12: Designing Finite State Machines |
R13: Implementing A Simple State Machine | |
R14: eLC-3 (due 8/8) | |
Intro to P8 (due 8/8) | |
Exams | Exam 2 makeup due 8/5 |
Week 8 : 8/5-8/11 | |
Lectures | Caches |
Pipelining | |
Final Exam Review | |
Assignments | P8: LC-3 Simulator Due 8/9 |
Recitations | R14 Checkin: eLC-3 Due 8/9 |
Exams | Final Exam 8/8 in recitation Review Sheet |