Assignment 9, due Oct 29

Part of the homework for 22C:60, Fall 2004
by Douglas W. Jones
THE UNIVERSITY OF IOWA Department of Computer Science

Always, on every assignment, please write your name legibly as it appears on your University ID and on the class list! All assignments will be due at the start of class on the day indicated, and unless there is what insurance companies call "an act of God" - something outside your control; the only exceptions to this rule will be by advance arrangement.

  1. Do problems b, e, f, m and r from Chapter 10 of the notes.

  2. First: Using the crude floating-point representation from the notes, just above exercises h through k, work out the representations of 1/7th 1/15th. (Section 10 of the Hawk manual may come in handy here simply for its table of binary fractions.)

    Second: Show the binary representation for these two fractions in IEEE standard 32-bit floating point format.

  3. Suppose someone took a listing of your solution to Machine Problem 3 and then took a pen and drew a horizontal line across a randomly selected page, dividing your solution arbitrarily into two parts. Imagine that you had to split your code along that line, into two separately assembled source files.

    First: What code would you have to add to each of the resulting files so that it could communicate with the other hald, and

    Second: What changes would you have to make to some of the branch and PC-relative instructions in the original code in order to make them communicate across the split in your code.

  4. What separately assembled subroutines would be appropriate in the context of your solution to Machine Problem 3?