CS217 Lecture and Precept Notes


Week 11

Java References: Java homepage, Java language, Java Overview, Java in a NutShell, D. Flanagan, Ch 2
4/22 Simple Objects in Java
4/24 Object Inheritance in Java
4/25-26 Precept: Primality testing continued.
4/26 Exception Handling in Java; How Java differs from C.
Reading: Java in a NutShell, D. Flanagan, Ch 2

Week 10

4/15 Bignum arithmetic, Finish signal handling.
4/17 Quiz
4/18-19 Precept: Primality testing.
4/19 Compilation Pipeline; assembly languages; assemblers
Linking and Loading; relocation
Readings: Paul 1.9, 9.1-8

Week 9

4/8 Finish exception handling,
Operating Systems; privileged instructions; modes; virtual resources; traps
Readings: Paul Ch. 12.
4/10 UNIX System calls for processes
Readings: Kernighan&Pike, The UNIX Programming Environment, Sec. 7.4.
4/11-12 No precept this week.
4/12 UNIX System calls for signals and interrupts
Readings: Kernighan&Pike, The UNIX Programming Environment, Sec 7.5.

Week 8

4/1 Procedure calls.
4/3 Quiz, Finish Procedure Calls.
4/4-5 Precept: Procedures in assembly language
4/5 Exception Handling notes
Exception handling code

Week 7

3/25 Review Midterm, Condition Codes; carry and overflow; branches; control transfer
Readings: Paul Sec 4.6, 4.8-9
3/27 Instruction Pipelining; delay slots; annul bit
Reading: Paul Sec. 2.5, 2.8-11.
3/28-29 Precept: SPARC Assembly language examples
3/29 Procedure calls
Readings: Paul Ch. 5, 7.

Week 6

3/11 Basic SPARC Architecture
Readings: Paul Ch. 1, 2.1-4, Ch 8-9
3/13 Arithmetic Instructions; data movement; synthetic instructions; floating point
Readings: Paul Sec. 4.7, 4.10-12, 11.5-6, 11.10.
3/14-3/15 No precept this week
3/15 Midterm

Week 5

3/4 Programming Style; layout and indentation; structure; efficiency
Readings: Pike, Notes on Programming in C;
3/6 Number Systems; arithmetic; two's complement; floating point
Readings: Paul Sec. 3.1-3, 4.1-5, 4.10, 11.1-4, 11.7-8.
3/7-3/8 Precept: Recursive data types
3/8 Finish numbers, Computer Organization; memory; assembly language; execution
Readings:
Paul Ch. 1, 2.1-4, Ch 8-9

Week 4

2/26 Finish simple pointers, Structures; pointers to structures; unions; bit fields; typedefs
Readings: K&R Sec. 6.1-3, 6.7-9.
2/28 Quiz, Finish structures, etc.
2/29-3/1 Precept: Recursion and Linked Lists
3/1 K&R Sec. 7.3, B1.2.

Week 3

2/19 Make; version control; RCS
Readings: make and RCS man pages
2/21 Arithmetic Operators; portability; conversions; evaluation order
Readings: K&R Sec. 2.4-12; Maquire Ch. 6.
2/22-23 Precept: Program Design
2/23 Pointers; pointer arithmetic; pointers and arrays; pointers to functions
Readings: K&R Sec. 5.1-12.

Week 2

2/12 ANSI C Programming Language; program structure; declarations; scope
Readings: K&R Sec 2.1-3, Ch. 4; Maquire Ch. 5.
2/14 Quiz, Types; constants; arrays; strings; enumerations
Readings: K&R Sec. 4.11, 7.1, 7.4-7.
2/15-16 Precept: Abstract Data Types, Specifications, and Testing
2/16 C Preprocessor; macros; I/O
Readings: K&R Sec. 4.11

Week 1

2/5 Interfaces and Implementations; abstract data types; assertions
Readings: K&R Ch. 1; Maquire Introduction, Ch. 1-2.
2/6-8 Precept: Using GDB (and Netscape)
2/7 Quiz, Finish up Interfaces, etc.
2/9 Talk about Assignment 1 and go over Quiz.

CS217, CS Department, Princeton University
Last modified: Sun Feb 25 11:30:55 EST 1996