Computer Systems, 4th Edition

Lecture videos

Resources

Lecture 1: Computer Systems
Lecture 2: C++ Memory Model
Lecture 3: C++, Information Representation
Lecture 4: Signed Integers and Status Bits, Java
Lecture 5: RTL, Shift Operations, Hexadecimal, and ASCII
Lecture 6: Machine Instruction Format
Lecture 7: Machine Language Programs
Lecture 8: von Neumann Machines
Lecture 9: Memory Maps, Operating Systems
Lecture 10: Assembly Language
Lecture 11: Direct and Indirect Addressing
Lecture 12: Trap Instructions, Disassemblers
Lecture 13: Symbols, Global Variables, Assignment Statements
Lecture 14: Types, Constants, Trace Tags
Lecture 15: Languages and Grammars
Lecture 16: Finite State Machines
Lecture 17: Multiple Token Recognizers
Lecture 18: Implementing FSMs, Table Lookup
Lecture 19: Implementing FSMs, Direct Code
Lecture 20: Implementing a Tokenizer, 1
Lecture 21: Implementing a Tokenizer, 2
Lecture 22: Implementing a Tokenizer, 3
Lecture 23: Implementing a Tokenizer, 4, Maps
Lecture 24: Implementing a Parser, 1, Review
Lecture 25: Implementing a Parser, 2
Lecture 26: Stack Relative Addressing, Local Variables
Lecture 27: Flow of Control
Lecture 28: Structured Programming, Function Calls
Lecture 29: Global and Local Variables Called by Value
Lecture 30: Implementing a Parser, 3
Lecture 31: Implementing a Parser, 4
Lecture 32: Non-Void Function Calls
Lecture 33: Global and Local Variables Called by Reference
Lecture 34: Code Generation, 1, Boolean Types, Indexed Addressing
Lecture 35: Loaders, Global and Local Arrays
Lecture 36: Code Generation 2, Arrays as Parameters
Lecture 37: The Switch Statement, Global Pointers
Lecture 38: The New Operator, Linked Structures