Homework 3: Assembly, Building Executables, and Structs

Assigned Wednesday, April 26, 2017
Due Date Friday, May 5, 2017 at 11:59pm (23:59)
Submissions No submissions for this homework; just complete the Canvas quizzes linked below.

Introduction

The purpose of homework assignments is to get you thinking about the topics being covered in lecture and in readings in the textbook that are not represented in the hands-on, programming lab assignments. The homework also provides you with practice problems in preparation for the exams. It is worth noting that the book contains many practice problems similar to the problems we ask on these written assignments! The solutions for those practice problems are located at the end of each chapter and should give you a feel for the kind of answers we expect you to turn in for these kind of assignments.

Logistics

All homework this quarter is being presented as "quizzes" on Canvas. Please follow the links below to find the questions and to input your answers. Unfortunately, Canvas is an imperfect system and you must submit the entirety of a quiz at once and can't save intermediate progress. You will receive a score immediately after submission, including an indication of which questions you answered incorrectly. You have 20 attempts for each Canvas quiz.

You are encouraged to work in groups and ask questions about the homework on Piazza, but it is in your best interest to attempt the homework by yourself first. If you don't fully understand the solutions, it will likely come back to haunt you on the exams, which are worth a much larger percentage of your course grade.

Make sure you are using the 3rd edition of Computer Systems: A Programmer's Perspective. If you're not using the right book, you might be doing the wrong problems!

Questions

Homework 3 has been separated by topic into the following quizzes to make submission more manageable. Make sure you complete all of the quizzes below in order to receive full credit:

  1. C and Assembly
  2. Compiling, Assembling, and Linking
  3. Structs