University of Wisconsin Computer Sciences Header Map (repeated with 
textual links if page includes departmental footer) Useful Resources Research at UW-Madison CS Dept UW-Madison CS Undergraduate Program UW-Madison CS Graduate Program UW-Madison CS People Useful Information Current Seminars in the CS Department Search Our Site UW-Madison CS Computer Systems Laboratory UW-Madison Computer Sciences Department Home Page UW-Madison Home Page

CS/ECE 354: Machine Organization and Programming

Fall 2003

Sections 1 and 2

http://www.cs.wisc.edu/~cs354-1/ (not valid)

http://www.cs.wisc.edu/~cs354-2/ (not valid)

Archived at http://www.cs.wisc.edu/~markhill/cs354/Fall2003

Last updated by Mark on Friday, 13-Jun-2008 07:51:18 CDT

Table of Contents


Section 1

Section 2

Fall 2003 Teaching Assistants


Required Text

Goodman and Miller
A Programmers View of Computer Architecture
Oxford University Press

For Chapters 2 and 9, we will be using revised versions.

  • Revised Chapter 2 postscript, pdf
  • Revised Chapter 9 postscript, pdf

    Handouts


    Assignments

    There are both written homeworks and programs in this course. Homework is given in this course to provide practice problems for building the skills necessary to write assembly language programs. Homework is also intended to emphasize concepts through problem solving. Many problems force you to think and solve problems that relate to concepts not adequately covered in class. Programs will focus on course topics. Grading is based on both correctness and programming style. Programs and homeworks are due as stated on each assignment.

    You will write assembly language programs in this course. You will be expected to design algorithms and organize code for the programs. These details will not often be covered in class. You will be expected to write grammatically correct, clear documentation for the code.

    The computers you will use are Suns running Solaris Unix at locations given by the CSL CS 354 class page entries. These machines are named novaX, where X is an integer, and are located in rooms 1358, 1366, and 1368 of the Computer Science and Statistics building.

    If you had an account on the Unix machines in CS last semester, it will still be available to you. Otherwise, you have been assigned a new account. Learn how to access your account by logging in as "newuser" on one of the Novas (leave the password entry blank). If this is not clear, you should attend one of the Unix Orientation Sessions.

    Each homework and program will have both a due date and time. Assignments will be turned in online. Any assignment turned in after the due date/time and up to 24 hours late will receive a deduction of 25% of the total points. Any assignment turned in 24 hours to 48 hours late will receive a deduction of 50% of total points. Any assignment turned in more than 48 hours after the due date/time will not be graded, and it will receive a zero score.

    You may work together with others enrolled in the course to complete your assignments. Each student must turn in each assignment. On collaborated assignments, include the names of all students involved.

    Exam questions will require your understanding of both homeworks and programs. Expect exam questions to determine whether you both did and understood the assignments.


    Solutions & Statistics

    Requests for re-grades must be made within one week after graded work is returned. For programs and homeworks, contact the TA listed as the grader on your grade sheet. For exams, contact your instructor.

    Examinations

    All Sections

    There will be exams. The first two are given during class time; the last exam is given during the summary activity period. The dates of the exams are given in the schedule below.

    Policies

    Bring a current photo ID to all exams. Your UW student ID is preferred. No ID, no exam!

    Each student may use one 8.5 by 11 inch sheet of paper with hand-written notes when taking the exams. Both sides of the paper may be used. These notes may not be shared when taking the exam.

    Copies of appropriate tables for ASCII/SAL/MAL/TAL will be provided with a exam.

    No electronic devices (such as calculators and laptop computers) may be used during exams. Cell phones or pagers will be turned off during exams. A phone that rings during an exam will result in a fine, to be used at instructor's discretion.

    If you have a conflict with any listed exam time, you must notify your instructor by the end of the second week of classes.

    Here are some previous exams (with solutions). Many of the questions are representative of questions you are likely to see on this semester's exams.


    University Policies

    University Policies will be followed strictly in this course. Please, pay particular attention to policies on academic misconduct and incompletes.

    Grading

    Course grades will be curved within each section.
    Grades will be based on the exams, homework, and program scores:

      percentage
    homeworks and programs  30% 
    Exam 1  20% 
    Exam 2  25% 
    Exam 3  25% 


    Other grading policies:

    Course Schedule

    Dates Chapter Notes
    9/3-5 1 --
    9/8-12 2 --
    9/15-19 3, 4 HW 1 due Friday (covers CH 1, 2, 3)
    9/22-26 4, 5 Program 1 due Friday
    9/29-10/3 5, 7 HW 2 due Wednesday (covers CH 4, 5)
    10/6-10 7 No Class Monday for section 1
    Exam 1 Wednesday (covers CH 1-5)
    10/13-17 8 --
    10/20-24 9 HW 3 due Wednesday (covers CH 7, 8)
    Program 2 due Friday
    10/27-31 9, 10 No Class Friday for section 1
    11/3-7 10, 11 Program 3 due Wednesday
    HW 4 due Friday (covers CH 9, 10)
    11/10-14 11, 12 Exam 2 Friday (covers CH 7-10)
    11/17-21 12, 6 Program 4 due Wednesday
    11/24-28 6 HW 5 due Monday (covers CH 11, 12)
    No Class Wednesday for section 1
    No Class Friday for Thanksgiving break
    12/1-5 13 Program 5 due Wednesday
    12/8-12 14, extra topics HW 6 due Wednesday (covers CH 6, 13)
    Monday 12/15-- Exam 3 during the Summary Activity Period, 5:05pm
    (covers CH 11-13, and 6)

    (This time is given in the online timetable;
    The newsprinted timetable is incorrect.)

    Lecture Notes

    Chapter & Topic Karen's Notes Mark's Notes
    Chapter 1 -- Basics Notes Notes
    Chapter 2 -- SAL Notes Notes
    Chapter 3 -- Number Systems Notes Notes
    Chapter 4 -- Data Representation Notes Notes
    Chapter 5 -- Integer Arithmetic Notes Notes
    Chapter 7 -- Data Structures Notes Notes
    Chapter 8 -- MAL and Registers Notes
    examples
    Notes
    Chapter 9 -- Procedures Notes
    on $s vs. $t registers
    an example
    activation record layout
    Notes
    354 Conventions
    Chapter 10 -- Assembly Notes Linking Notes,
    552 Review
    Chapter 11 -- I/O Notes, more I/O Notes
    Spin-Wait Kernel
    Chapter 12 -- Exceptions Notes, and for your amusement: The Story of Mel Notes
    Kernel Picture
    (ps,pdf,ppt)
    Kernel Gist
    Kernel
    Chapter 6 -- Floating Point Notes,
    MIPS fl.pt. hardware,
    on rounding
    Notes
    Chapter 13 -- High Performance Notes, on CPI, HW impact on SW Notes
    Chapter 14 -- Case Studies Notes, on Virtual Memory Notes

    Frequently Asked Questions (FAQs)


    Miscellanea


    Computer Sciences Department
    College of Letters and Science
    University of Wisconsin - Madison


    INFORMATION ~ PEOPLE ~ GRADS ~ UNDERGRADS ~ RESEARCH ~ RESOURCES

    5355a Computer Sciences and Statistics ~ 1210 West Dayton Street, Madison, WI 53706
    cs@cs.wisc.edu ~ voice: 608-262-1204 ~ fax: 608-262-9777