CS310 - Computer Organization and Programming (Spring 2009)

Course: Computer Organization and Programming
CS 310
Unique Numbers: 54040, 54045, 54047, 54050, 54055
Instructor: Prof. Donald S. Fussell
ACES 2.120
Phone: 471-9719
Office Hours: MW 1:00-2:00
Administrative Assistant: Lindy Aleshire
ACES 5.256
Phone: 232-7891
Teaching Assistants:
Bert Maher
Office: ENS 31NQ, Desk #2
Directions: Take the elevator to "LB". At LB, go to your right down the hallway, which will be curving to the right. When you come to 31NR on your left, go through it to the smaller room, 31NQ. There are 6 desks there, marked with numbers.
Office Hours: MW 11:00am-12:00pm
Dong Li
Office: ENS 31NQ, Desk #2
Directions: Take the elevator to "LB". At LB, go to your right down the hallway, which will be curving to the right. When you come to 31NR on your left, go through it to the smaller room, 31NQ. There are 6 desks there, marked with numbers.
Office Hours: Tues 2:30pm-3:30pm, Thurs. 1:00pm-2:00pm
Lab Proctors:
Matthew Clarkson
Location: Lab 31 NQ
Lab Hours: M 5-8pm, T 6-8pm, W 5-7pm,
Th 2-3pm, 5-7pm, F 1-2pm, 5-6pm, Sat 1-4pm
Phillip Verheyden
Location: ENS 2
Lab Hours: M 1-2pm, T 3:30-4:30pm,
Th 12-1pm, F 11am-1pm
Class Meetings: MW 3:30-5:00, WAG 101
Discussion Sections: #54040: TH 10am-11am, JES A207A
#54045: TH 10am-11am, RAS 211A
#54047: TH 11am-12pm, RAS 215
#54050: TH 1pm-2pm, RAS A211A
#54055: TH 2pm-3pm, MEZ 1.102
Class Information: WWW: www.cs.utexas.edu/users/fussell/cs310
E-mail list: https://utlists.utexas.edu/sympa/subscribe/cs310_spring09/
Required Textbooks: Introduction to Computing Systems: From Bits and Gates to C and Beyond, 2nd Edition Yale N. Patt and Sanjay J. Patel, McGraw-Hill Publishers, ISBN 0-07-246750-9, 2004.

CS310 Course Reader, containing excerpts from "Computer Systems: Architecture, Organization, and Programming," by Maccabe.

The text can be purchased from the University Co-Op
The course packet is available from the University Copy Center at WEL 2.228.

Prerequisites: Students must have completed CS307 with a grade of at least C.

Course Objectives

To understand the basic operation of computing systems. Upon completing this course, students should have a high-level understanding of the role played by each major component of the system, including compiler, operating system, assembler, instruction set, and hardware. Programming assignments will be conducted on the departmental PCs running linux. You may also find the tools available on the departmental PCs running windows or you may install the tools on your own computer. However, you must ensure that any programming assignment you turn in functions correctly with the linux installation of the tools.

Student Evaluation

Your performance in this class will be evaluated through homework assignments, programming assignments, three quizzes, final exam, and participation in your discussion section. Each student's lowest quiz score will automatically be dropped. The weights of each of these components is listed below:

For each quiz and exam, you may bring a non-programmable calculator and a single 8 1/2 x 11 sheet of handwritten notes (no photo-reduction). In class exams will be 50 minutes in duration according to the schedule. There will be no make-up quizzes or exams.

The assignments will be a combination of written work and programming work. The written work will help you pace yourself in the reading and in your understanding of lectures. The programming components will teach you how to think like a computer and is vitally important to your understanding of this course.

Assignments will be due at the beginning of your assigned discussion section. Your programming assignments will be submitted electronically and will require you to use your departmental Unix account. You may not email your assignments to the teaching staff. Programs will be graded on correctness, readability, style, and documentation.

You have a "late account" of 4 days for the term which you can spend as follows on your assigments. In general, an assignment is one day late until 5pm of the day after it is due, two days late from then until 5pm of the second day, etc. No more than 2 of these late days can be spent on a single assignment. Weekends count as a single day, so once 5pm on Friday has passed, you will spend one additional day if you turn your assignment in on time on Monday. No assignment can be turned in after the start of class on the Monday on which the solutions for that assignment are handed out. So for a typical homework, it's due on a Thursday in discussion section, it's one day late as of Friday afternoon, it's two days late as of Monday before class starts, and it cannot be turned in after the start of class on Monday.

Once you have exhausted your late account, no late assignments will be accepted. You are responsible for turning in your assignment to your discussion section TA. The departmental homework drop box will not be used.

Academic Misconduct Policy

You are free to discuss the course material with your classmates and are encouraged to form study groups for the exams. However, collaboration on homework or programming assignments is not permitted unless explicitly stated by the instructor. Helping a friend understand the intent of a homework or programming assignment specification is permitted. Students who work together too closely (e.g. design their solution together) should be aware that this is a form of cheating called COLLUSION and is subject to academic penalties. Penalties for academic misconduct include a failing grade in this course.

The homework, programs, and exams must be the work of students turning them in. University policy (see Dean of Students' policies on academic integrity) will be followed strictly.

Acts that exceed the bounds defined by the approved collaboration practices will be considered cheating. Such acts include:

We urge everyone in the class to take appropriate measures for protecting one's work. You should protect your files, homework solution sheets, etc. as deemed reasonable.

Studying for tests together is permitted and encouraged. Please come talk to us if you are unsure about how to work together with your friend in a legal, helpful manner. Remember, it is always ok to "work together" with your professor or TA!

Your Responsibilities in This Class:

Other General Information

The programming assignments will require use of the Department of Computer Sciences instructional computing resources. All CS students who meet the prerequisites for CS310 are eligible for a CS departmental Microlab account and undergraduate Unix account.

Important links:

Course Material Outline
Course Schedule

Last modified: 03/16/09 by Don Fussell fussell@cs.utexas.edu