CS 124 Introduction to Computer Systems : Syllabus

advertisement
BRIGHAM YOUNG UNIVERSITY
Computer Science
CS 124 Introduction to Computer Systems
WINTER 2006
Navigation









Syllabus
Class Schedule
TA Schedule
Homework
Labs
Exams
References
Web Submission
Send Email
Course Information
Class Times


Section 1: TTH 8:00am - 9:15, 1170 TMCB
Section 2: MWF 9:30am - 10:45am, 1170 TMCB
Credits
3
Prof. Roper
Office
2230 TMCB
E-mail
send email
Phone
801-422-8149
Teaching Assistants
Hours
see schedule
Office
1126 TMCB and 423 CB
Phone
TMCB phone: 801-422-8147
E-Mail
send email

Syllabus Winter 2006 hardcopy
Syllabus
Purpose
This class is designed as a first introduction to computer systems. The focus is on computer
organization, not the art of programming. The goal is to understand the inner workings of a
modern computer from binary number representation to how a C program is compiled, linked,
and executed. At the end of the course, the student should have a basic understanding of:











Boolean algebra and binary number representation
Logic gates, storage functions, and their transistor implementations
Arithmetic and logical operations on binary numbers
Simple computer architecture
Computer operations and instructions
Input-Output (I/O)
Subroutine linkage and stacks
Assembly language
C syntax and basic programming
Basic data structures
Recursion
Text
For the lecture material, we will use
Operating Systems: Internals and Design Principles, fifth edition, by William
Stallings, Prentice Hall, 2005, ISBN: 0-13-147954-7.
We will do a lot of C programming in this class. If you need a reference, I suggest the following
books:
Practical C Programming, 3rd Edition, by Steve Oualline, O'Reilly & Associates,
August 1997, ISBN 1-56592-306-5.
and/or
Practical C++ Programming, 2nd Edition, by Steve Oualline, O'Reilly &
Associates, December 2002, ISBN 0-596-00419-2.
The text for the course is
Introduction to Computing Systems from Bits & Gates to C & Beyond, 2nd edition
by Yale N. Patt and Sanjay J. Patel.
This book will be used extensively throughout the course and supplemented by materials found
on Blackboard. There will also be times when information is given in class that is neither in the
text nor on Blackboard. Class attendance and notes are important.
Course Activities
Course Materials
All materials relating to the class can be accessed via Blackboard and this website. This includes
the class syllabus, schedule, Powerpoint lectures, homework, labs, discussion board, messages,
and most importantly, grades. It is the responsibility of each to student to verify that homework,
exam, and lab grades have been correctly recorded.
Programming Environments
Programming of the labs will be done in LC-3 assembler and C. With the exception of Lab 1, the
micro-architecture simulator, the choice of the software tools and programming environment is
left to the student's discretion. This can be accomplished in several ways:




Windows users can download the LC-3 editor/assembler/simulator from the book's
website and a very good C compiler at the LCC website. Both are free!
For those wanting to use Linux on their home computers, look at the KNOPPIX website
for a free Linux system bootable from CDROM.
For those who do not own a computer or would just rather do their work using BYU
facilities, there are Linux/Unix labs available in both the Computer Science and
Engineering buildings with a Java LC-3 assembler/simulator. A gcc compiler is also
available. The EMACS, VIM, or KWRITE are acceptable text editors. If you are unsure
of which editor to use, feel free to ask a TA
In any case, it is the student's responsibility to present their work to a TA in the
designated CS/ECEn 124 labs for pass off. (1110, 1106, 1102, 1029, 1027, and 1126
TMCB or 308 and 425 CB)
Computer Lab Assignments
CS 124 is a "hands on" course with lab assignments needing to be passed off by TAs in the CS
124 computer labs (1110, 1106, 1102, 1029, 1027, and 1126 TMCB) or EE CAEDM labs (308
and 425 CB). There are ten computer lab assignments designed to emphasize topics discussed in
class. The lab assignments explore programming at various abstraction levels in the computer
system. Please pay careful attention to the following guidelines:




Lab assignments can be found under Assignments on Blackboard and Labs on the
navigation bar to the right at the top of the page.
Lab assignments must be completed and passed off with a Date Modified timestamp on
or before the due date to receive full credit. NOTE: Timestamps cannot be used for extra
credit points and cannot be more than two days delinquent.
Any lab assignment completed and passed off after the due date will lose 10% per school
day. (After 2 weeks, an assignment has no grading value but may be used in adjusting
grade at the end of the semester!).
Lab assignments are to be passed off by a TA during regular TA hours in the TA offices
or class programming labs.





Lab assignments can be passed off on school computers or personal laptops (see
Programming Environments below).
In addition to passing off an assignment with a TA, lab assignments must be submitted by
the student via electronic submission before any grade can be awarded. Please note that
this is the student's and not the teacher or TA's responsibility and must be done within
two days of pass off!
As an incentive to get your labs done early and to motivate you to thoroughly check your
work, labs passed off by a TA at least one day before the due date (timestamps do not
count) will receive an additional 10% extra credit.
Any grade points earned on labs above the allotted lab percentage will apply to your
overall grade.
All labs MUST BE COMPLETED, PASSED OFF AND ELECTRONICALLY
SUBMITTED on or before the final day of the semester (April 18).
Homework
Homework assignments are designed to reinforce class material and help in exam preparation.
Please pay careful attention to the following guidelines:



Homework is assigned weekly through Blackboard and due at the beginning of class
each Thursday (beginning in the 2nd week). At that time, homework will be discussed
and graded with students being called upon to present their solutions and questions.
Most homework will consist of 5 to 10 questions and cover the material from the
previous week's class discussion.
Homework must have the student's name, section, and homework number clearly
indicated at the top of the homework to be accepted for grading. Answers must be clearly
legible as well to be graded. Any homework submitted after the due date will lose 50%
per week. (After 1 week, an assignment has no grading value!).
You are welcome and encouraged to discuss the homework with your classmates and others.
However, you are to do and submit your own work. Submitting someone's work is considered
cheating for which you will receive an E grade for the class and be reported to the Honor Code
Office. No grade is worth the consequences of dishonesty!
Course Assessment
Exams
Three midterms will be administered during the course of the semester and a final exam during
finals week at the end of the semester. All exams will be administered in the testing center and
be available from Thursday until closing on Saturday. The exams are the same for both sections
of the class. (You should plan at least 1-2 hours for each exam.)
Electronic Submission
All lab source material is to be submitted electronically. Only text files (.txt) will be accepted for
grading. Text editors such as EMACS or VIM automatically generates file the meet the text file
format requirement. Notepad and WordPad also work equally as well although WordPad defaults
to .rtf (use the Save As option). Microsoft users are also welcome to use Word or other Microsoft
products for homework and labs as long as the files are submitted in text format (again, use the
Save As option). IT IS YOUR RESPONSIBILITY TO VERIFY THAT YOU ARE
SUBMITTING THE RIGHT TYPE OF FILE!
Grades
Grades will be based on lab assignments (40%), homework (20%), and four exams (40%) as
follows:






Lab assignments (40%)
o Lab 1: Micro-architecture Simulator (Feb 10) (4%)
o Lab 2: Machine Code (Feb 17) (2%)
o Lab 3: Secret Decoder (Feb 24) (4%)
o Lab 4: Conversions and Logic Operations (Mar 3) (4%)
o Lab 5: Taxes (Mar 10) (4%)
o Lab 6: Nim (Mar 17) (4%)
o Lab 7: C Calculator (Mar 24) (4%)
o Lab 8: Mancala (Mar 31) (5%)
o Lab 9: LC-3 Simulator, Part I (Apr 7) (4%)
o Lab 10: LC-3 Simulator, Part II (Apr 14) (5%)
Homework (20%)
Midterm 1 (Feb 9-11) (8%)
Midterm 2 (Mar 9-11) (8%)
Midterm 3 (Apr 6-Apr 8) (8%)
Final Exam (Apr 21-26) (16%)
Grades are assigned on the following scale from the composite total of above areas: 100-93 A
82-80 B- 69-67 D+
92-90 A- 79-77 C+ 66-63 D
89-87 B+ 76-73 C 62-60 D86-83 B 72-70 C- 59-0 E
Please note that since extra credit is available for each lab, there will be no rounding of final
points. However, we reserve the right to modify the grading percentages in favor of the student
as deemed advisable at the end of the semester. The university policies on UW and I grades are
strictly followed.
Grading Verification and Appeal Policy
It is the student's responsibility to verify that we have correctly recorded scores. If a score is
incorrect on Blackboard, then the student must follow the appeal process to correct the score.
Incorrectly recorded grades become final after the appeal time frame expires.
The student can appeal a grade on a homework or lab through email to their grading TA. The
appeal must be submitted within 1 week of the score being posted on Blackboard. Scores are
posted on blackboard 1 week after the homework or lab is due. The student can appeal a grade
on an exam directly to the instructor through email. Midterm appeals must be submitted within 1
week of when the midterm closes at the testing center. The final exam may be appealed within 1
week of when the grade is posted on Blackboard. Verbal appeals are not considered.
Academic Honesty
The BYU Honor Code includes a statement of standards regarding academic honesty. Academic
honesty includes completing your own homework, programming assignments, midterms, and
final. Students should work together to help each other understand material, but should always
turn in their own work. Examples of academic dishonesty include sharing code for assignments
with other students, turning in someone else's code as your own, sharing exam material with
other students, and cheating on an exam. Any violation of academic honesty standards will result
in failing the class. All violations of academic honesty are documented and reported to the Honor
Code office.
Preventing Sexual Harassment and Discrimination
Title IX of the Education Amendments of 1972 prohibits sex discrimination against any
participant in an educational program or activity that receives federal funds. The act is intended
to eliminate sex discrimination in education. Title IX covers discrimination in programs,
admissions, activities, and student-to-student sexual harassment. The BYU policy against sexual
harassment extends not only to employees of the university but to students as well. If you
encounter unlawful sexual harassment or gender based discrimination, please talk to your
professor; contact the Equal Employment Office at 378-5895 or 367-5689 (24-hours); or contact
the Honor Code Office at 378-2847.
Students with Disabilities
Brigham Young University is committed to providing a working and learning atmosphere which
reasonably accommodates qualified persons with disabilities. If you have any disability which
may impair your ability to complete this course successfully, please contact the Services for
Students with Disabilities Office (378-2767). Reasonable academic accommodations are
reviewed for all students who have qualified documented disabilities. Services are coordinated
with the student and instructor by the SSD Office. If you need assistance or if you feel you have
been unlawfully discriminated against on the basis of disability, you may seek resolution through
established grievance policy and procedures. You should contact the Equal Employment Office
at 378-5895, D-282 ASB.
Disclaimer
This syllabus is subject to change during the semester in favor of the student as deemed
necessary by the instructor. All changes will be reported in class as well as clearly posted on
Blackboard. It is the student's responsibility to stay current with class policies and check
Blackboard and email often during the week.
Download