CSE 378: Machine Organization and Assembly Language

General Info, Spring 2002

Where and When

Lecture: EEB 037, MWF 11:30-12:20
Sections: EEB 037, Th 12:30 (A) & Th 1:30 (B)

Instructional Staff

Instructor: Ben Dugan, Sieg 226C, dugan@cs.washington.edu
Office Hours: Monday 1:30, Wednesday 12:30, and by appointment, or whenever I'm in the office...

Teaching Assistants:
Douglas Low, Office Sieg 226a, office hours T 2:30, W 1:30 douglas@cs.washington.edu
Jesse Kinkead, Office Sieg 226a, M 2:30 jesse@cs.washington.edu

Course Goals

From the programmer's point of view, "the hardware" is given by its architectural specification. We will look at the general topic of computer architectures, using the MIPS R2000 as a specific example, and its most obvious exposure to the programmer, assembly language programming. (Note that basically no one actually programs in assembly language anymore. However, your C++ code is turned into an assembler program by the compiler, and that is what the hardware actually runs. Once you've seen assembler, many mysteries about programming will suddenly become clear.)

Text

Patterson & Hennessy, Computer organization and Deisgn: The Hardware/Software Interface, Morgan Kaufmann, 1998.

Exams and Important Dates

There will be one midterm and a final. Tentatively, the midterm will be Wednesday, May 1st. The final exam will be Wednesday, June 12th, at 2:30 PM. There will be no class on May 27th, Memorial Day.

Homework & Grading

There will be homework. In all cases, the goal of the homework is to help motivate you to learn the material, and to help verify that you have done so. There will be three kinds of homework: SMOK projects, programming in assembly language (on a simulated MIPS machine), written questions from the book or my own imagination. There may also be some minor compiler hacking in Java.

Grades will be based on the midterm (roughly 20%), final (roughly 35%) and homework (roughly 45%). Percentages are approximate and subject to change. Intangibles may contribute to the final grade.

Class Participation

I'd like this to be an interactive class. Interaction with the instructor and the TA in class and during office hours is highly encouraged (although not required). If I do call on you, that does not mean that I'm picking on you, just that I'm trying to get you to participate. There might come a time when you have to answer a question to which you don't know the answer. In this case, you should not be ashamed to say, "I don't know." I guarantee this will happen to all of us (myself included) at some point.

Late Assignments and Incompletes

Assignments are due at the beginning of lecture. If you write answers out by hand, please make sure it's legible. Write your name, quiz section, and the name(s) of your collaborators (see below) on each assignment.

The late policy is as follows: each student is granted one late day to use at his/her discretion during the quarter. A late day is defined as the period of time until the beginning of the next lecture. For example, if an assignment is due Wednesday, turning in the assignment anytime up to the beginning of Friday's lecture constitutes the use of one late day. Use your late day wisely. Barring exceptional circumstances, extra late days, incompletes, or other extensions will not be granted.

Collaboration/Cheating Policy

Students in this course are encouraged to work together. However, there are a few groundrules everyone must follow. Failure to understand and follow these rules will constitute cheating, and will be dealt with as per university guidelines.

  1. The Gilligan's Island Rule: This rule says that you are free to meet with fellow students(s) and discuss the assignment with them. Writing on a board or shared piece of paper is acceptable during the meeting; however, you should not take any written (electronic or otherwise) record away from the meeting. After the meeting, engage in a half hour of mind-numbing activity (like watching an episode of Gilligan's Island), before starting to work on the assignment. This will assure that you are able to reconstruct what you learned from the meeting, by yourself, using your own brain.
  2. The Freedom of Information Rule: To assure that all collaboration is on the level, you must always write the name(s) of your collaborators on your assignment.


dugan@cs.washington.edu