Lecture Notes for
Computer Systems: A Programmer's Perspective (CS:APP)
Originally prepared by Randal
E. Bryant and David
R. O'Hallaron. Edited by Warren A. Hunt, Jr. for use in UT CS352.
UT CS352 NOTE: Most of the slide material was prepared by the
textbook authors as a part of their textbook offering, but I have made
a number of changes.
Lecture Notes
Classes 0 and 1 - Introduction (Web-based, Physical Computer Presentation):
- Class 00 - Course Overview (August 27, 2009)
(pdf), read Chapter 1.
- Class 00 - Course Organization (August 27, 2009)
(pdf), read Chapter 2.
Class 01 - Bits and Bytes (September 1, 2009)
(pdf)
Class 02 - Programming in C (September 3, 2009)
(pdf)
- Data Lab (Laboratory #1) handed out
Class 03 - Integers (September 8, 2009)
(pdf)
Class 04 - Floating point (September 10, 2009)
(pdf), read Chapter 3.
Class 05 - Machine-Level Programming I - Introduction (September 15, 2009)
(pdf)
Class 06 - Machine-Level Programming II - Control Flow (September 17, 2009)
(pdf)
Class 07 - Machine-Level Programming III- Procedures (September 22, 2009)
(pdf)
Class 08 - Short Review, Information to Date (September 24, 2009)
- Class 08 - Short Exam 1 (September 24, 2009)
Class 09 - Machine-Level Programming IV - Structured Data (September
29, 2009) (pdf)
Class 10 - Machine-Level Programming V- Miscellaneous Topics
(October 1, 2009) (pdf)
- Data Lab (Laboratory #2) handed out
Class 11 - Machine-Level Programming -- Miscellaneous Topics
(October 6, 2009) Laboratory #2 discussion, Finish Machine-Level
Programming slides
Lecture Notes for Chapter 4: Processor Architecture
Note: Some of these slides are going to be reviewed quickly. We are
going to develop our own microprocessor specification and implementation.
Class 12 - Instruction Set Architecture (October 8, 2009)
(pdf)
Class 13 - Discussion of Class Y86 ISA Specification (October 13, 2009)
Class 13 - Discussion of Class Y86 Assembler (October 13, 2009)
(Assembler and
Simulator Example Source Material)
Class 14 - Logic Design (October 15, 2009)
(pdf)
Class 15 - Sequential Implementation -- Midterm Review (October 20, 2009)
(pdf)
- Class 16 - Midterm Exam (October 22, 2009)
Class 17 - Pipelined Implementation (October 27, 2009)
(pdf)
Class 18 - Pipelined Implementation II (October 29, 2009)
(pdf)
Class 19 - Y86 Wrap-up (November 3, 2009)
(pdf)
Lecture Notes for Chapter 5, 6, and 10
Class 20 - Program Optimization I (November 5, 2009)
(pdf)
We will only cover a few slides from this next set.
(pdf)
Class 21 - The Memory Hierarchy (November 10, 2009)
(pdf)
Class 22 - Cache Memories (November 12, 2009)
(pdf)
Class 23 - Short Review, Information to Date (November 17, 2009)
- Class 23 - In-Class Exam (November 17, 2009)
Class 24 - Virtual Memory (November 19, 2009)
(pdf)
Class 25 - P6/Linux Memory System (November 19, 2009)
(pdf)
Class 26 - Dynamic Memory Allocation I (November 24, 2009)
(pdf)
Class 27 - Dynamic Memory Allocation II (December 1, 2009)
(pdf)
Class 28 - Guest Lecture -- Glenn Henry (President, CTO, Centaur
Technology) (December 3, 2009) (pdf)
Quiz about the guest lecture immediately
following the lecture.
- Final Exam (Friday, December 11, 2009, 9:00 am)
CMA A2.320
Return to CS352 course homepage.