|
Computer Science 217
Intro to Programming Systems
Mona Singh |
Spring 2001 |
Course Summary
The purpose of this course is to provide the fundamental background necessary
to understand, design and implement the components of programming systems.
Examples of such components include text editors, assemblers, compilers,
loaders, interpreters, and portions of operating systems. The course is
divided into three major parts, machine organization and assembly language
programming, program design and development, and software tools.
Prerequisite: 126.
Administrative Information
Lectures: TTh 8:30-9:50, Room: 105
Professor: Mona
Singh, msingh@cs.princeton.edu.
Office Hours by appointment.
Undergraduate Coordinator:
Tina McCoy -
410 CS Building - 258-1746
tmmccoy@cs.princeton.edu
Mailing Lists and News Groups:
Send email to the Professor and TAs at cs217@cs.
Read the pu.cs.217 newsgroup for general information
and questions about assignments.
Teaching Assistants:
Name |
Wagner Correa |
Wen Xu |
Email |
wtcorrea@cs |
wxu@cs |
Office |
CS bldg 414 |
CS bldg 315 |
Phone |
258- 5388 |
258- 1795 |
Precept |
Thursday 10-11 |
Friday 11-noon |
Location |
CS 302 |
CS 302 |
Office Hours |
Monday 9:00 - 11:00 AM |
Thursday 4:30 - 6:30 PM |
Additional TA support for CS217 is available in CS101.
Policies
-
Lecture:
-
You will be responsible for the material presented in every lecture. Some
of this material will not be in the textbooks.
-
Precepts:
-
You should attend one precept each week. You can choose any one among those
listed above. You should try to keep going to the same precept as far as
possible since that's how you will be judged for participation (of course
if you miss one you are allowed to go to another). If you can not attend
any of these precepts, let us know as soon as possible.
-
Quizzes:
-
We will administer make-up quizes only in the case of documented
illnesses. If you know you will be out of town on the day of the
quizzes, you must take the quiz before the day of the quiz.
-
Assignments:
-
See assignments page.
-
Newsgroup:
-
Please monitor the newsgroup regularly, because we will use it to make
announcements. Note that there are old articles from last semester; we
left them because we thought they might be useful to folks this semester.
-
Grading:
-
The grade weighting for the semester will be:
Midterm: |
20% |
Quizes: |
15% |
Programs: |
60% |
Precepts and Class: |
5% |
Textbooks
Required Texts:
-
Samuel P. Harbison and Guy L. Steele Jr. C: A reference manual, Fourth
Edition. Prentice Hall. 1995.
-
Richard P. Paul. SPARC Architecture, Assembly Language Programming,
& C. Prentice-Hall. 1993.
Recommended Texts:
-
Brian W. Kernighan and Rob Pike. The UNIX Programming Environment.
Prentice-Hall. 1984.
-
David R. Hanson. C Interfaces and Implementations: Techniques for Creating
Reusable Software. Addison-Wesley. 1997. (errata for [1st
printing] [2nd
printing] of this book.)
-
Steve Maguire. Writing Solid Code. Microsoft Press. 1993.
Note: You may use different editions of the books, but if so then
you are responsible for figuring out any changes in section numbers for
the readings.