Augustana Faculty logo and wordmark


COMPUTING SCIENCE 250
Computer Organization and Architecture I

COURSE MATERIALS INDEX

Fall Term, 2006


This document was last modified on Monday, 16-Apr-2007 20:43:19 MDT



Course Information

. Course Description and Regulations

. Course Outline

. Instructor Office Hours and Contact Information

. Percentage to Alpha Conversion Chart

. Policy on Academic Integrity

. Expectations regarding Attendance and Course Work


Textbook

The textbook for this course will be Computer Systems, 3e, by J. Stanley Warford (Jones and Bartlett, 2005) ISBN 0-7637-3239-7.

. Textbook web site

. Textbook Errata


Programming Assignments and Exercises

Exercises will be listed here according to the date of the class session during which they will be discussed, so they should be completed prior to the corresponding class session.

Programming assignments will be listed according to the date of the lab session in which they will be first presented or discussed; the course outline shows when the various lab assignments are due.

Your solutions to the programming assignments will be submitted through a web-based submission script which requires a user ID and a password. Your user ID will be the same as your ID for the campus computer network, but the password will be unique to the web submission system. Your initial password is your U of A ID number (7 digits, without a hyphen or other punctuation); you should change it to something more private as soon as possible, using the "Change Password" button below.

Submission forms will appear here as each assignment becomes due.


Password for Assignment Submissions

Your assignment submissions are password-protected. These passwords apply only to form data submitted via the Web server. They are separate from (and typically different from) your Augustana/U of A network password or the password for your Unix account (if you have one).


Lecture Notes

A set of lecture notes in PDF format is available, one per chapter, as prepared by the textbook author. They are really not lecture notes in the traditional sense, but rather a collection of the figures from each chapter.

. Chapter 1

. Chapter 2

. Chapter 3

. Chapter 4

. Chapter 5

. Chapter 6

. Chapter 7

. Chapter 8

. Chapter 9

. Chapter 10

. Chapter 11

. Chapter 12

. Introduction to Linux, Emacs, and G++      [large print]

Exercises

NOTE: I have re-arranged these by date, instead of by chapter. As a result, I have prepended the chapter number to each exercise number for clarity. I have also moved the exercise for Section 2.3 earlier and adjusted the due date for the other exercises from Chapter 2.

For Sept. 15: Do exercises 1.4(c,d), 1.6, 1.10, and 1.11 on pages 28–29 and exercises 3.4, 3.6, 3.7, 3.9, 3.16, 3.18, 3.20, and 3.21 on pages 136–139.

For Sept. 19: Do the exercises for Section 2.2.

For Sept. 22: Do the exercise for Section 2.3 and exercise 2.1 on page 80..

For Sept. 26: Do exercises 2.7 and 2.8 on pages 80–81 and exercises 3.23, 3.25, 3.26, 3.27, 3.32, 3.34, and 3.36 on pages 140–141.

For Sept. 27: Do exercises 3.43, 3.45, 3.48, 3.49, 3.50, 3.51 and 3.52 on pages 142–143.

For Sept. 29: Do exercise 2.15 on page 83. Submit the source code for your solution for checking (but not grading) using the submission form under Assignments above.

For Oct. 17: Do exercises 4.2, 4.4, 4.6, 4.8, and 4.9(b) on pages 183–185.

For Oct. 18: Do exercises 5.2, 5.4, 5.6, 5.11 and 5.12(b) on pages 227–229. Note that question 4(b) was corrected in the errata list to

    STRO 0x000D,sf

For Oct. 20: Do problems 5.24, 5.25, and 5.26 on page 231. These are programs to be written in assembly language. These programs will not be submitted or graded, but are assigned to allow you to practice assembly-language programming prior to starting Lab Assignment 3.

For Oct. 24: Do exercises 5.14, 5.16 and 5.19 on pages 229–230.

In the Nov. 3 lab: Do exercises 6.11 (if-else) and 6.12 (while loop) on page 319.

For Nov. 7: Do exercises 6.16, 6.19, and 6.20 on pages 320–321.

For Nov. 8: Do exercise 6.23 on page 322.

For Nov. 24: Do exercises 6.31, 6.33 and 6.35 on pages 325–326.

For Nov. 28: Do exercises 7.2, 7.4(b), 7.6(b,d,f), and 7.7(b) on pages 379–380.

For Nov. 29: Do exercises 7.11, 7.12, and 7.13(b) on page 381.

For Dec. 1: Do exercises 10.8(b), 10.12(a), 10.14(b,c), 10.15(e,j,n), 10.18, and 10.21(b,e,j) on pages 538–540. Note that Exercise 10.12 is revised in the errata by replacing "a, b, and c" with "a and b".

For Dec. 5: Do exercises 10.31(b-d), 10.33(b-d), 10.35(b-d), 10.46(c,d), and 10.47(a,b) on pages 541–543.

For Dec. 6: Do exercises 11.2, 11.5(a,c), and 11.8(c) on page 587.

For Dec. 8: Do exercises 11.10, 11.12, 11.13(b) and 11.14(b) on page 588.


Sample Exams

. Sample Final Exam (PDF)

. Answers for Sample Final Exam


Resources

IEEE 754 Floating Point Standard

. ieee754_to_hex.c - A program to show the internal representation (in hex) of an IEEE 754 single-precision floating point number.

. hex_to_ieee754.c - A program to show the IEEE 754 single-precision floating point number corresponding to a given internal representation (in hex).

. IEEE 754 Converter applet by Harald Schmidt

. Bit Display Applet by Richard Rasala - shows the 32-bit representation of (Java) int and float values and the 64-bit representation of long and double values; you can enter values or toggle bits. Richard Rasala points out:

Actually, since the IO is done via Java Power Tools, there is automatic expression evaluation in all IO. Thus, for example, if X is an integral or floating point value in one of the text fields, then it is legal to write expressions such as:
     X + 1
     X - 1
     X * 2
     X / 2
and then to press return to get the revised bit values.
One can also write more sophisticated expressions such as:
     (1 + sqrt(5))/2
     exp(2)
     sin(pi/4)
in the floating point fields.
Copyright © 2002, 2004, 2006 Jonathan Mohr