ISA Exam
Contents
ISA Exam Overview
- The exam timeline is marked on the calendar:
- info: Monday 13 November
- inclass: Thursday 16 November
- The exam is a paper exam covering topics listed below.
- Some study suggestions are included below.
Exam Logistics
The exam will be in person during class time.
You may bring a provided paper blue book that you can fill with your own notes to the exam (you may not bring textbooks or electronic material). Blue books will be available the week before the exam in class or picked up from Alexa’s office (W116).
Honor Code
The exam is subject to the Honor Code.
You may not give or receive help on the exam. You may not share details of the exam questions or what material is covered until exam solutions have been released to everyone in the course. At that point, you can discuss the exam with other Fall 2023 CS240 students (you should not provide this information to any future CS240 students).
You are encouraged to study with other students and can prepare your own paper notes with other students.
Reference material
The exam does not focus on memorization and will include specific required information for certain sections (e.g., you do not need to memorize all x86-64 instructions, which would be an impossible task). However, you should know offhand, for example, how to read an x86 addressing mode, how structs are aligned in C programs, or how to deference a pointer.
In addition to the per-question reference material, the following reference pages will be provided: ISA reference pages
Topics
- The exam focoses on topics under the
Hardware-Software Interface
part of the course.
- While the exam does not focus on topics from the earlier Computational Building Blocks part of the course, the ideas are connected, so facility with those ideas may still help.
- +Optional topics are excluded.
- Buffer Overflows is included, but will not be worth a substantial number of points, because the associated assignment is due after the exam. You should be comfortable with explaining the high-level idea of a buffer overflow attack as described in lecture and lab.
- Later topics, starting with Memory Allocation, are excluded.
- The exam assumes familiarity with the concepts used by assignments associated with the exam topics.
Study Materials
The following materials may be of use in studying for the exam:
- Problems from class 11/13. SOLUTIONS.
- Slides from the tutor ISA exam review.
- Lecture slides, videos, and associated exercises
- Lab exercises
- Assignments
- Review materials and Midterm/Final exams from a similar course at
University of Washington in Autumn 2016 or
later:
- These sample exams follow a similar style to the CS 240 exam. Sample solutions are available.
- It is sometimes necessary to pick and choose problems.
- The topics relevant for CS 240 are split across the Midterm and Final exams in this other course.
- These sample exams may also cover some topics, such as floating point numbers, caching, processes, or virtual memory, that will not be covered by this CS 240 exam, and some topics, such as integer representation and bitwise operations, that still matter, but will not be a primary focus of this CS 240 exam.
- Avoid the exams prior to Autumn 2016, which use an older version of x86 that will confuse you.
- An incomplete list of suggested problems:
- Winter 2019:
- Midterm: 2, 3, 4
- Final: 1, 2, 3, 4
- Autumn 2018:
- Midterm: 2, 3, 4, 5
- Final: M2, M3, M4, M5, F6
- Winter 2019:
- The chapters we have used in the CSAPP book include many excellent practice problems (with solutions at the end of the chapter) and homework problems.