Department
of Computer Science
CS/COE 0447
– Computer Organization and Assembly Language
Syllabus – Fall 2007
Goals and Course
Description
To
understand how software is run on a processor; to gain the ability to write
efficient programs in assembly language and understand how instructions are
executed; to understand a simple processor design; to gain knowledge about fundamental
components of a computer. Taking MIPS as an example, we will study processor
organization (hardware) and write programs (software) in assembly language. We
will also study how numbers are represented by computers and computer
arithmetic, as well as performance metrics to evaluate different hardware and
software implementations.
Textbook, Course
Materials, and Courseweb
Computer Organization & Design (Patterson & Hennessy)
3rd Ed., Morgan & Kaufmann, 2004.
The class will
cover Chapters 1-5 and parts of Appendices A and B.
Course materials
will be distributed via a course web page http://www.cs.pitt.edu/~wiebe/courses/CS447/Fall07
, including syllabus, software, schedule, etc. The
schedule links to lecture notes, homework assignments, programming assignments,
labs, and solutions.
Grades will be available
on courseweb
at http://courseweb.pitt.edu. We will also use courseweb
for submission of your programming
assignment solutions (to the digital dropbox, as described below).
Also, there is a courseweb Discussion Board for questions, discussion, and
information about assignments, labs, lectures, MARS, and the text.
Prerequisites
CS 0445 – Data Structures (can be taken concurrently)
Instructor
Dr. Jan Wiebe
(wiebe@cs.pitt.edu), 412-624-9590, 5409 SenSq
Office hours: 1pm-2pm
Tues, Thurs & by appt (send email to make an appointment)
Graduate TA
Kiyeon Lee (lee@cs.pitt.edu), 412-624-8239, 5501 SenSq
Office hours: M
2-4 & W 2-3
Lecture/Recitation/Link
To learn Hours and Classroom
Lecture: T Th 4 :00
~ 5 :15 @105
Recitation 1: F 11:00
~ 11:50 @5505 SenSq
Recitation 2: F 1:00 ~ 1:50 @5505
SenSq
Link-to-Learn office hours [Mike
Maksymowych]: T 2:45 ~ 3:50; Th 5:15 ~ 6:15 @ 5712 SenSq
(additional time may be added, if needed)
Student
Evaluation
12-14 lab sessions 15%
4 homework + 3 programming
assignments 25%
3 Term exams 35%
FINAL exam 25%
_________________________________________
100%
Lab Sessions
Lab
sessions will be held during recitations (a couple will be held during lecture). You will work in pairs, with partners
switching from week to week. Together, you’ll work through examples and
explore memory allocation, number representation and computer arithmetic,
instruction execution, performance evaluation, processor control, etc. The lab sessions will help you learn the
material and will also give you valuable experience explaining things to each
other. In addition to the graduate TA, Kiyeon
Lee, two undergraduate TAs, Toby Horn and Jesse Szwedko, will attend to assist
you.
The
labs will be graded S/U (satisfactory/unsatisfactory). You’ll earn an S grade for a lab if you
attend the session, work with your partner, and complete the lab with
reasonable answers. If needed, you can finish the lab after the session. Labs are due one week from the session. Solutions will be made available on the
course schedule.
Homework and
Programming Assignments
Homework
and programming assignments will receive numerical grades. You may discuss the assignments and help each
other figure out how to approach the assignment in general, but you must actually answer the questions and
write/debug the code by yourself. The assignments must be your own individual
work. See the section below on academic
integrity.
Homework should be submitted in hardcopy, in the grader’s
mailbox, on the fifth floor of SenSq.
Programming assignments should be uploaded to courseweb at http://courseweb.pitt.edu. Click on course tools, then digital dropbox. Please name the
file, for example, PA1part1 (for programming assignment 1 part 1),
followed by your name. You need to click on “send
file” for the file to be submitted to us. If you only click on “add file”, the TA and I
will not be able to access your submission.
Exams
The
questions on the exams will all be similar to something we covered in lecture,
on a homework or programming assignment, or on a lab. To study, read the text, and then use the
lectures, assignments, and labs to focus studying. Practice the examples without looking at the answer,
and then check your answers against the lectures, assignment/lab solutions, and
simulator, as appropriate.
See
“What will be on Exam X” on the schedule to see what will be covered on Exam X.
Exams
1-3 are not cumulative. The final exam
is cumulative.
You
can bring a copy of the green card that comes with the book with you to
exams. Also, some figures from the book
will be given to you on some of the exams (this will be indicated in the “What
will be on Exam X” files on the course schedule). Otherwise, the exams are closed book and
calculator free.
The
material gets more complex as the course proceeds, and later exams build on the
stuff covered in the earlier exams. So
keep up!
Other Policies
and Notes
·
Mail will be sent to your pitt account. So, if you don’t check your pitt account
regularly, you should forward mail from your pitt account to the account you do
check.
·
Late homework, programming, and lab assignments will
not be accepted.
·
Students are expected to be present for all exams.
Make-up exams will be given only in the event of an emergency, which needs to
be documented.
·
Lectures will be mixtures of powerpoint slides and
work on the board. Lecture notes will be
available by 6pm the day before, if you want to bring copies. I suggest you set up your notes so you can
easily interleave your handwritten notes with the lecture slides. Note that there is a “notes” view in
powerpoint which might be useful.
Academic
Integrity
Plagiarism
and cheating are strictly prohibited. Each student is expected to do his/her
own work on homework and programming assignments and exams, and each set of
partners is expected to do their own work on labs. Offense of this rule will
result in a “0” in the particular assignment, exam, or lab. The second offense
will lead to an automatic “F” for the course and the offender may be subject to
stronger actions
8. Students with
disabilities
If you have a disability for which you are or may be
requesting an accommodation, you are encouraged to contact both your instructor
and the Office of Disability Resources and Services (DRS), 216 William Pitt
Union,