|
Computer Science 217
Introduction to Programming Systems
Thomas Funkhouser |
Spring 2002 |
Directory
General Information |
Schedule |
Lectures |
Precepts |
Assignments |
Policies
General Information
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: COS 126.
Administrative Information
Lecture: MW 10:00-10:50 : CS 102
Precept 01: TTh 12:30-1:20 : CS 102
Precept 02: TTh 3:30-4:20 : CS 102
Professor: Thomas Funkhouser :
422 CS Building : 258-1748 :
funk@cs.princeton.edu :
Office Hours: ??? ?:?? - ?:??, or by appointment
Preceptor: Robert Dondero :
206 CS Building : 258-2211 :
rdondero@cs.princeton.edu :
Office Hours: MF 3:30 - 4:20, TTh 1:30-2:20, or by appointment
Undergraduate Coordinator:
Tina McCoy :
410 CS Building : 258-1746 :
tmmccoy@cs.princeton.edu
Textbooks
Required:
-
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,
and C (Second Edition). Prentice-Hall. 2000.
Recommended:
-
David R. Hanson. C Interfaces and Implementations: Techniques for Creating
Reusable Software. Addison-Wesley. 1997. (errata for [1st
printing] [2nd
printing] of this book.)
-
Michael Kosta Loukides, Andy Oram, Mike Loukides, Andrew Oram. Programming With GNU Software.
O'Reilly. 1997.
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.