Computer Organization and Assembly Language Programming
Mondays and Wednesdays
from 10:00AM to 11:20AM
or from 5:45PM to 7:05PM
Rami Melhem (firstname.lastname@example.org)
219 Mineral Industries Building,
Mondays and Wednesdays from 3:30 to 4:30
Tuesdays and Thursdays from 2:30 to 3:30
Meepani K. Karunanayake (email@example.com)
335 Alumni Hall,
Mondays and Wednesdays from 11:30 to 1:30, and from 4:30 to 5:30
Recitations (113 MIB)
Mondays or Wednesdays from 9:00AM to 9:50 AM or
from 7:15PM to 8:05PM
In this course, we will study the basis of assembly language, the
conversion from assembly language to machine language, the relationship
between the machine language and the machine executing it, how it is possible
to build a machine that executes instructions, what makes a good architecture
and how we compare architectures.
We will write several programs in MIPS assembly language for the MIPS
R2000/R3000 RISC computer and study at least one program for the 80x86
architecture. We will use the SPIM S20 simulator for the projects.
Computer Organization and Design - The Hardware/Software Interface
By David Patterson and John Hennessy
Second Edition - Morgan & Kaufmann.
Requirements and grading:
Three exams (50%).
Four programming projects (40%)
Homeworks and quizzes (10%)
Policy on cheating and late homeworks
Programming projects are to be individual efforts. Collaboration
is considered cheating.
Cheating on exam or projects will results in a grade of "0" for the first
time (for all involved students) and an "F" in the course for the second time.
There will be a 10% per day penalty for late work. Work that
is more than five days late will not be accepted. Exams will not
be rescheduled except under extraordinary circumstances.
We will cover Chapters 1, 2, 3, 4 and 5 from the textbook,
as well as Appendices A, B and C.
If time permits, we will also cover parts of Chapter 8, and touch on issues from