|
|
Lectures
Lecture |
Date |
Topics |
Book Sections |
Lecture Notes |
1 |
Jan 18, 2011 |
Course overview; Computer systems organized as a systematic set of transformations; representation using bits |
Ch 1, § 2.1, 2.2 |
Notes |
2 |
Jan 20, 2011 |
Bits and Operations on Bits: unsigned and signed integers; arithmetic and logical operations; ASCII; floating point; hexadecimal notation |
§ 2.3-2.7 |
Notes |
3 |
Jan 25, 2011 |
Introduction to C; Variables and Operators: basic data types, simple operators; Basic I/O with printf and scanf |
Ch 11, § 12.1, 12.2 |
Notes |
4 |
Jan 27, 2011 |
Simple operators; Control Structures: conditional constructs; examples |
§ 12.3, 12.4, 13.1, 13.2 |
Notes |
5 |
Feb 1, 2011 |
C Control Structures: iterative constructs, comprehensive examples, problem solving |
§ 13.3-13.5 |
Notes |
6 |
Feb 3, 2011 |
Digital Logic Structures: gates; combinational logic; storage elements |
§ 3.1-3.4 |
Notes |
7 |
Feb 8, 2011 |
Digital Logic Structures: memory; sequential logic; FSM concept; clock |
§ 3.5, 3.6 |
Notes |
8 |
Feb 10, 2011 |
The von Neumann Model: basic concepts; instruction processing; sequencing; LC-3 architecture |
Ch 4 |
Notes |
9 |
Feb 15, 2011 |
The LC-3: Instruction Set Architecture |
§ 5.1-5.3 |
Notes
|
10 |
Feb 17, 2011 |
The LC-3: ISA; Example program in LC-3 machine language; LC-3 datapath |
§ 5.4-5.6 |
Notes
|
11 |
Feb 22, 2011 |
Programming in LC-3 machine language: control structures, examples, debugging |
Ch 6 |
Notes
|
12 |
Feb 24, 2011 |
LC-3 Assembly Language; examples; assembly process |
Ch 7 |
Notes
|
13 |
Mar 1, 2011 |
I/O abstractions: input from the keyboard, output to the monitor |
Ch 8 |
Notes
|
14 |
Mar 3, 2011 |
Repeated Code: TRAPs and subroutines; Examples |
Ch 9 |
Notes
|
15 |
Mar 8, 2011 |
Stack |
Ch 10 |
Notes
|
16 |
Mar 10, 2011 |
Functions in C: introduction, syntax, run-time stack |
§ 14.1-14.2, 12.5 |
Notes
|
17 |
Mar 15, 2011 |
Functions in C: run-time stack, activation records |
§ 14.3-14.5 |
Notes
|
18 |
Mar 18, 2011 |
Pointers and arrays: introduction, run-time stack, arrays as function parameters |
Ch 16 |
Notes
|
19 |
Mar 29, 2011 |
Arrays: strings, multidimensional arrays, examples |
Ch 16 |
Notes
|
20 |
Mar 31, 2011 |
Input and Output in C: basic I/O calls, file I/O, examples |
Ch 18 |
Notes
|
21 |
Apr 5, 2011 |
Problem solving with arrays, examples; Testing and debugging |
Ch 16 |
Notes
|
22 |
Apr 7, 2011 |
Recursion: introduction, examples, recursion vs iteration, recursion and run-time stack |
Ch 17 |
Notes
|
23 |
Apr 12, 2011 |
Basic Data Structures: introduction, structures, defyning new types, arrays of structures, union, enumerations |
§ 19.1-19.3 |
Notes
|
24 |
Apr 14, 2011 |
Basic Data Structures: dynamic memory allocation, linked lists |
§ 19.4-19.6 |
Notes
|
25 |
Apr 19, 2011 |
Basic Data Structures: linked lists |
|
Notes
|
26 |
Apr 21, 2011 |
Advanced Data Structures in C: doubly-linked list, stack, queue, tree |
|
Notes
|
27 |
Apr 26, 2011 |
Advanced Data Structures in C; Miscellaneous features |
|
Notes
|
28 |
Apr 28, 2011 |
Introduction to Scientific Computing |
|
Notes
|
29 |
May 3, 2011 |
From LC-3 to a modern microprocessor architecture; Course wrap-up and advice for sophomore system builders |
|
Notes
|
|