Final Exam - Friday, December 16th, 2022
There will be a final exam, administered via Gradescope.
(There is no midterm exam.) The date will be chosen
by the registrar; we will post it here as soon as we know
what it is. It will be three hours long.
The exam is closed book. You may bring two (2)
double-sided 8½″×11″ (“letter”) or A4-sized sheets of notes,
with anything you want written or printed on them, but you may not
refer to any other book, document, or online reference during the
You may also bring as many pens, pencils, and sheets of scratch
paper as you want. Some pens and blank paper will be available
from the exam proctors.
You are not permitted to use a calculator or any other
Everything covered in the course is fair game, including all of the
assigned textbook readings (whether or not also covered in lecture)
and lab material.
You may be asked to draw diagrams. You can do this either on
paper, or using a drawing tool on your computer. If you choose
to draw on paper, be aware that illegible handwriting will earn
you zero points, and make sure you have a way of digitizing the
diagram so it can be uploaded to Gradescope (phone cameras have
worked just fine for students in the past).
Your TAs will hold an exam review shortly before the exam.
To study, read each chapter and work in study groups to review slides,
review your own notes, work the practice problems in the book,
and do problems from previous exams.
Questions will be broadly similar to those asked in the written
assignments, but may be more difficult. They will also be broadly
similar to the questions asked in the old exams which are archived
Note: Several of the old exams ask questions involving
32-bit x86 assembly language. This will not appear
on the exam; we will use only 64-bit x86 assembly language.
There are large differences between the two, particularly regarding
procedure calls. A
detailed comparison between the two architectures
is available as one of the
CS:APP web asides.
To save you from having to dig for them, here is a partial list
of old exams with practice problems using 64-bit assembly
- Fall 2012: Questions 3 and 4
- Fall 2011: Questions 3 and 4
- Spring 2011: Question 3
- Fall 2010: Questions 3 and 4
- Fall 2009: Question 5
- Spring 2008: Question 3
- Spring 2007: Question 2
- Fall 2006: Question 4