Preparing for the COMP 40 Final Exam

Final exam overview and scope

The final exam may cover any material taught in class or introduced by the homework assignments. This includes, of course, any material that was in scope for the midterm. You can especially expect to see questions on the midterm topics with which students had trouble, including: machine-level representations of information and numbers; shifting and masking; etc.

The following sections give more details on topics that may be covered on the final, but these lists are not necessarily exhaustive: any material covered in the course or the assigned reading may appear on the final. You can assume that emphasis will be given to the topics that received most attention during the term.

Regarding memorization of details

In general, we will not expect you to memorize picky details of machines, languages or data formats. For example, we do expect you to understand the purpose of key components of IEEE floating-point representation, such as the significand, but if needed we will remind you that in 32 bit IEEE floats, the significand is 23 bits long.

We do expect you to memorize the sorts of details that competent C programmers at your level should know: for example, we expect you to know that %s is the printf format code for printing a string, that %d is for signed integers, that int's on our systems are 4 bytes and little-endian, etc.

Regarding assembler language programming: we will expect you to recognize the more common x86_64 instructions such as mov and to know the most important general features of the architecture, such as that %eax names the low order 32 bits of register %rax. We will not expect you to memorize details of unusual instructions or to memorize which registers are used for which parameters in the function linkage. If you need such information to answer a question, we will provide it in an appendix, just as we did for the midterm.

We do expect that you will be familiar in detail with UMASM programming, as you have been doing that for the past three weeks.

Final exam topics from the first half of term

The following list is adapted from the midterm preparation page that was posted ahead of the midterm. Any of these may be on the final as well:

Final exam topics from the second half of term

The following are topics that were not included for the midterm but which may be on the final:

Materials to review

The primary sources that are likely to be helpful to you in preparing for the test are the ones linked from our course calendar, including especially:

Taking the test

The following rules and procedures apply to this test:

Last Modified 29 November 2014 Noah Mendelsohn noah@cs.tufts.edu