CS 330
Exam 3
Study Guide
Exam 3 will cover chapters 9, 10, and the first part of 11.
Ch. 9 Topics
Simple call-return subprograms
Current instruction pointer
Current environment pointer
Implementation of return
Activation Record Stack Implementation
C memory organization
Recursive subprograms
Issues related to interpretation of Pascal forward declaration
Data Control
Names and referencing
Other named program elements
Associations and referencing environments
Environments
Visibility
Dynamic scope
Aliases
Static and dynamic scope
Block structure
Local data
Parameter transmission
Correspondence of actual and formal parameters
Transmission mechanics
Pass by name
Jensen's device
Pass by reference
Pass by value
Pass by value-result
Pass by result
Pass by constant reference
Transmission semantics
Transmission implementation
Aliases
Dynamic vs. Static scope and block structure
Dynamic and static chains
Local block declarations
Ch. 10 Topics
Elements requiring storage
Programmer vs. system-controlled storage
Storage management phases
Static storage management
Heap storage management
Problems with dynamic memory use
Dangling references
Memory leaks
Fixed sized elements
Reference counts
Garbage collection
Coalescing
Explicit return by programmer or system
Variable sized elements
Ch. 11 Topics
Exception handling
Events that cause exceptions
Try-catch-throw
Assertions