Course Plan/Ground Rules

CS 350-01/02: Computer Organization & Assembly Language, Fall 2009

Dr. Jim Sasaki, CS Dept., Illinois Institute of Technology

For posted grades and lecture videos, go to Blackboard.

Document Index: [ Intro | Books | Course Goals | Classwork | Grading & Ethics | Conduct ]

Introduction

This syllabus contains information about the course topics, the textbook, and the ground rules for the course.

Cover of Patt Textbook

1. Books

Textbook & References

Required: Introduction to Computing Systems: From Bits & Gates to C & Beyond (2nd edition), by Yale N Patt, Sanjay J Patel, Patt Yale, ©2004 McGraw-Hill, ISBN 0072467509.

2. Course Goals & Objectives

2.1 Catalog Description (as of Aug, 2009)

Introduction to the internal architecture of computer systems-including micro-, mini-, and mainframe computer architectures. Focuses on the relationship among a computer's hardware, its native instruction set, and the implementation of high-level languages on that machine. Uses a set of assembly language programming exercises to explore and analyze a microcomputer architecture. 2-2-3 (C) Prerequisites: CS 116 or CS 201.

2.2 Course Topics

Digital logic hardware, Low-level data representation, von Neumann computing model, Instruction set architectures, Assembly language, Input/output, Interrupts, Traps and subroutines, Call stack, C programming, other topics as time permits.

2.3 Course Goals

The course goal is for you to learn, at a deeper level of abstraction, how computers and software work. The basic hardware of a computer represents data and actions in ways different from much that we see as computer users or as high-level programmers, so we'll look at questions like "How do we represent data in hardware (and why those representations)?" "What are stored-program computers, and why do we use them?" "What kinds of instructions does basic hardware support?" and "What does all this mean for people who program in languages like C++ or Java?"

3. Classwork

Coursework includes lecture, homework/lab work, a final project, and exams and quizzes. Regular class attendance is expected.

3.1 Active Teaching

Research in how to teach shows that students learn better when they are active participants in studying and answering questions than when they are passive receivers of lectures. In addition to calling on people in lecture, I plan to use group activities to get people to discuss and practice and teach each other. (Ungraded) mini-quizzes will help me get quicker feedback on what people understand and what they need more practice on.

3.2 Lecture

Try to avoid coming to lecture cold (without having looked at the textbook at all). You don't need to study everything in detail before lecture, but try to skim things so that you get more exposure to the material beforehand. Try to form questions about any parts you don't understand. Similarly, study the textbook after lecture in view of the ideas discussed.

3.3 Exams and Quizzes

There will be four quizzes, one midterm exam, and a final exam. (Open book/notes? Closed book? Closed notes? Let's discuss this.)

The midterm exam will be between quizzes 2 and 3. The final exam will be comprehensive but emphasize material since the second preliminary exam.

3.4 Homework/Labs

Homework/lab assignments will be assigned periodically. They'll generally be due at the beginning of lab, and lab will be used to discuss answers.

Collaboration and Use of Other Resources

I would like you work together on homeworks/labs. You may also use outside sources such as the Internet. If you work with someone, you must both submit your own copy of the answers -- don't submit just one copy for the group. When you submit your work, also include the name of the person/people you worked with and any resources you used, so that we can cross-reference if need be. (It may help us figure out your answer if we can check it against a partner's.) Don't include the textbook, teaching assistants, or instructor in the list of resources you used.

Note: “Working with” someone means things like sharing ideas and checking each other's work; it doesn't mean just copying someone else's work. Each of you should understand what you're handing in as well as though you'd done it alone. So a possible scenario is you work on Problem 1, your partner works on Problem 2, you get together and explain your work to each other so that now both of you know how to solve both problems. I recommend you write up your solutions separately so that you get more practice writing.

You aren't banned from handing in exactly the same solution as your partner(s) -- for some problems, there's only a small possible number of solutions or ways to phrase them. On the other hand, if you just staple your partner's solution to Problem 1 to your solution for Problem 2, you aren't both learning the material, which could be a problem at exam or quiz time. (See below for how much exams and quizzes count toward the final grade.)

Another recommendation: Don't work with the same partner(s) the whole semester. It's good to learn to work with different people.

3.5 Final Project

There will be a Final Project due at the end of the semester, details to be discussed. (One-person project? Group project?)

3.6 Make-up Homework/Labs, Exams/Quizzes

If you're sick or have an emergency, contact the instructor (or have a friend or family member contact the instructor) as soon as you can. Don't wait until you get well/get back in town. If you know you're going to miss class, please send the instructor an email.

Make-up homework and exams/quizzes are at the discretion of the instructor (not a guaranteed right), especially if you ask after the due date/exam date. (See My Grading Philosophy below.) Barring some urgent reason, you must take exams/quizzes at the scheduled time. (Getting a cheaper airline ticket is not considered to be an urgent reason.)

Note that because of the "Second Chance" policy for exams (see Section 4 below), missing a quiz or exam isn't as critical a problem as you might think.

3.7 Disability Policy

Reasonable accommodations will be made for students with a letter of accommodation from The Center for Disability Resources (LS 218, 312-567-5744, ) Please also speak with the instructor about any necessary accommodations well ahead of time.

4. Grading

4.1 The End-of-Semester Score

Here's a tentative breakdown -- I want to discuss it with you before the end of the semester: 15% Labs/Homework; 10% Final Project; 5% Participation/presentations; 4 quizzes @ 7% each; 14% Midterm Exam, 28% Final Exam. (The Lab/homework score will be your average score, scaled to be between 0 and 100.)

4.2 The "Second Chance" Policy [this is important!]

If you do badly on Quizzes 1 or 2, you have a chance to redeem yourself by doing well on the Midterm Exam: If you do better on the Midterm Exam than on your quiz, we'll use the Midterm grade to calculate your end-of-semester score. Similarly, if you do badly on Quizzes 3 or 4 or on the Midterm Exam, you have a chance to redeem yourself by doing well on the Final Exam: If you do better on the Final Exam than on a quiz or on the Midterm Exam, we'll use the Final Exam grade:

In theory, you could get zeros on all 4 quizzes and the Midterm Exam but still earn an A in the class by doing fantastically on the Final Exam. (But don't try this :-)

4.3 Letter Grades

My default scheme is A: 90-100, B: 80-89, C: 70-79, D: 60-69; E: 59-0. (I really try to stick to these numbers, and I promise not to make them higher.) There may or may not be a curve added to the final grade. Curving is done by adding a constant to everyone's end-of-semester score.

I reserve the right to assign a failing semester grade to any student who fails the final exam. I also reserve the right to lower your final grade by one letter for failing to attend class and participate in class discussions.

4.4 My Grading Philosophy

To me, grading is about describing the quality of your work. At the end of the semester, I take all your work and put it on a big scale and tell you what the quality gauge says. Maybe nine times out of ten, there's no ambiguity as to what the reading is: A, B, etc. The only judgement comes in at the borders. My personal algorithm is to push people up to the next higher grade if I can -- if you're two points short on the final exam, I'll give you the benefit of the doubt because I can't guarantee to myself that my grading is accurate to within two points when we're talking about an exam full of programs and proofs. On the other hand, if you're ten points short, you get the lower grade.

Your grade must be based solely on the quality of your work. It would be unethical and unprofessional of me to base the grade on anything else, and it would cheat the other students. Please don't ask me to raise your grade because a low grade will make your life more difficult.

Grading has to be done on a level playing field: I can't give you extra make-up work that I don't give to everyone else, especially once the semester is over. On the other hand, if in my judgement some uncontrollable factor has significantly unleveled the playing field for you, I may decide to on an exception. So if you miss an Exam because a flaming asteroid takes out the Kennedy Expressway, I will probably give you a make-up exam. (If you have a core sample and a note from your geologist :-)

5. Conduct

Classroom Conduct

In the classroom, please avoid distracting the other students with cell phone calls, excessive talking, noisily entering class late, any kind of harassment, etc. You may be called on in class, so please pay attention to what's going on. If you know you'll have to leave class early, I'd appreciate your telling me ahead of time. On the other hand, I know emergencies do happen.

Ethics (I'm for it!):

Students are responsible for maintaining the highest level of academic integrity; the IIT Code of Academic Honesty can be found in the undergraduate handbook at The Office of Student Affairs. The normal penalty for violations of this policy, especially copying or other cheating during exams or quizzes is an E for the course, plus notification of the student's advisor and/or department and any appropriate administrators.

Communicate with us!

Please take advantage of the instructor and TA office hours, email, etc., whenever you have problems or questions.

If you find yourself getting that lost feeling, don't wait weeks before seeing the instructor. It's much easier to deflect a rolling bolder near the top of the hill -- if you let it roll for 15 weeks, there's really nothing I can do. As an instructor, it's very depressing when some poor soul comes in, just before finals, panic-stricken about the final grade, with an Indiana-Jones-sized boulder looming just behind.

Document History

Posted: Aug 18, 2009.

Copyright © 2009 CS Dept., Illinois Institute of Technology

xhtml css