CS 211 Computer Architecture (2026 Fall)

Basic information


When and where to find the class

Lectures: Tuesdays & Fridays 12:10 PM – 1:30 PM Eastern Time. Lucy Stone Hall LSH-A102.

Recitations: Recitations will not be recorded. You are strongly encouraged to attend recitations prepared with questions about assignments and lectures, and to make use of TAs’ help.

The meeting locations and links for each recitation TA are on the class LMS on Canvas.

Office hours: Prof. Yipeng Huang’s office hours TBD CoRE 317.

The TAs have additional office hours; time and meeting links for each TA are on the class LMS on Canvas.


Learning goals

Throughout the course, students will learn about low-level programming, digital logic, and the memory hierarchy through case studies representative of real-world computer systems.

Students will apply essential knowledge of computer systems to create and modify low-level software and hardware implementations through hands-on programming exercises.

By the end of this course, students should have the preliminary skills to design and evaluate solutions that involve the computer software-hardware interface to address new problems.

Topics

  • C programming
  • Data representation and computer arithmetic
  • Boolean algebra
  • Assembly language programming
  • Main memory design
  • Cache design
  • Basic digital logic design
  • Processor design

Expected work and grading policy

  • 7 programming assignments (first two assignments are smaller in size); totalling 55% of the course grade.
  • Short timed quizzes; totalling 5% of the course grade.
  • Midterm exam; totalling 15% of the course grade.
  • Cumulative final exam; totalling 25% of the course grade.
  • Class and recitation participation
  • Discussion via Piazza

The course letter grade will be assigned according to this scale. A: 100%–90%. B+: 89.9%–85%. B: 84.9%–80%. C+: 79.9%–75%. C: 74.9%–70%. D: 69.9%–65%.


Syllabus

DateTopic/learning goalsReading assignmentProgramming assignment (PA)
Tuesday, September 1Computer architecture [slides]CS:APP Chapter 1.
Modern C Chapters 1–8.
PA 0 (C control flow, file I/O) released.
Friday, September 4Accessing ilab, writing, compiling, and running your first C program [slides]
Tuesday, September 8Change in Designation
of Class Day
(go to your Monday classes)
Friday, September 11C programming: I/O, pointers [slides]
Tuesday, September 15C programming: Pointers, arrays, memory [slides]Modern C Chapters 9-14.PA 0 due.
PA 1 (C arrays, data structures) released.
Friday, September 18C Programming: Arrays, functions [slides]
Tuesday, September 22C Programming: 2D arrays, pass-by-value vs. pass-by-reference [slides]
Friday, September 25C Programming: 2D arrays, function returns [slides]
Tuesday, September 29C Programming: Structs, functions, memory debugging [slides]CS:APP Chapter 2.PA 1 due.
PA 2 (C algorithm pattern implementation) released.
Friday, October 2Data representation: Bits, Bytes, Integers [slides]
Tuesday, October 6Representing and Manipulating Information: Bits, Ints, and Ops [slides]
Friday, October 9Representing and Manipulating Information: Bits, Ints, and Ops [slides]
Tuesday, October 13Representing and Manipulating Information: Integers [slides]PA 2 due.
PA 3 (data representations) released.
Friday, October 16Representing and Manipulating Information: Floating-point normalized numbers [slides]
Tuesday, October 20Representing and Manipulating Information: Floating-point normalized numbers and mastery [slides]
Friday, October 23Representing and Manipulating Information: Floating-point denormalized numbers and mastery [slides]CS:APP Chapter 3.
Tuesday, October 27Machine-Level Representation of Programs: Instruction set architectures [slides]PA 3 due.
PA 4 (assembly bomb lab) released.
Friday, October 30Class period midterm exam
Tuesday, November 3Machine-Level Representation of Programs: Bomblab, Addressing modes [slides]
Friday, November 6Machine-Level Representation of Programs: Control Flow, Loops [slides]
Tuesday, November 10Machine-Level Representation of Programs: Procedures, Recursion, Data [slides]PA 4 due.
PA 5 (cache performance lab) released.
Friday, November 13Machine-Level Representation of Programs: Procedures, Recursion, Data [slides]CS:APP Chapter 6.
Tuesday, November 17The memory hierarchy: Cache placement, replacement policies [slides]
Friday, November 20The memory hierarchy: Cache placement and replacement policies [slides]
Tuesday, November 24The memory hierarchy: Cache placement, replacement, and write policies [slides]PA 5 due.
PA 6 (digital logic) released.
Wednesday, November 25The memory hierarchy: Cache-friendly code [slides]
Friday, November 27Thanksgiving Recess
Tuesday, December 1The basics of logic design: Combinational logic [slides]
Friday, December 4The basics of logic design: Combinational and sequential logic [slides]
Tuesday, December 8Computer architecture [slides]PA 6 due.
Thursday, December 10Regular Classes End
Friday, December 11Reading Day
Monday, December 14Reading Day
Tuesday, December 15Final Exam Schedule designated exam time: 4pm – 7pm
Tuesday, December 22Fall Exams End

Resources

Technology Requirements: Students will need access to the Canvas site and be able to join class via audio, at a minimum.

Please visit the Rutgers Student Tech Guide page for resources available to all students.  If you do not have the appropriate technology due to financial constraints, please email the Dean of Students at deanofstudents@echo.rutgers.edu for assistance.  If you are facing other financial hardships, please visit the Office of Financial Aid at https://financialaid.rutgers.edu/.

Academic Integrity: https://www.cs.rutgers.edu/academics/undergraduate/academic-integrity-policy

http://nbacademicintegrity.rutgers.edu/home-2/academic-integrity-policy

https://nbprovost.rutgers.edu/academic-integrity-students