| ECE291 |
Computer Engineering II |
Kalbarczyk, Fall 2000 |
On-Line Lectures Notes
- Lecture 1: Course goals; Course overview; history;
review of binary number systems, 2's complement, and base conversion.
- Lecture 2: Computer System Architecures;
Specifics on the 80x86 (registers, memory, periphials);
Hints for MP0
- Lecture 3: Programming with registers;
Assembly Opcodes; Complex addressing modes.
- Lecture 4: Logical and Shifting
Operations, Math operations. Overflows & carries, flags settings.
- Lecture 5:
Conditional branching; Numerical comparisons;
Mapping loop/branch paradigms to linear code.
- Lecture 6:
Program organization, Assembly and debugging techniques, MASM directives,
multiplication, division, MACROs
- Lecture 7:
The stack: Implementation, PUSH & POP operations, direct access,
procedures, recursion
- Lecture 8:
Programming with high-level languages; Combining C with ASM:
(assemble, compile, link, and run)
- Lecture 9:
Memory-Mapped I/O, Video I/O Subsystem; Text Mode Video
- Lecture 10:
Table-Lookup Functions, Jump Tables, DOS/BIOS/vBIOS Calls,
Interrupt Vectors, Hash Functions
- Lecture 11:
Interrupt-Driven I/O, Hardware Interrupt Service Routines (ISR's),
Terminate & Stay Resident (TSR) Programs
- Lecture 12:
Device I/O with Ports: IN/OUT, 8253 Timer, Keyboard,
Parallel Port, Joystick
- Lecture 14:
Floating Point Arithmetic, the x87 FPU
- Lecture 15:
Pixel-based video graphics,
Mode 13h video,
Efficient string Instructions for fast graphics.
- Lecture 16:
Drawing lines; Bresenham's Line Algorithm.
- Lecture 17:
Instruction-level parallelism:
MultiMedia eXtensions (MMX), 3DNow, SSE
- Lecture 22:
Bitmap graphic:, PCX files, BMP files, Programming Techniques
- Lecture 22x: PC Sound card, DSP Programming,
FM Synthesis, Mixer Control
- Lecture 22z: Direct Memory Access.
DMA interface to audio hardware.
- Lecture 23:
Computer Networking: Ethernet, TCP/IP, NetBios Programming
- Lecture 25: Engineering Ethics (Guest Lecture by Michael Loui)
- Lecture 26 Final Project writeups/demos. Final Exam
- Lecture 27:Hardware Methods for Improving
CPU Performance, Applications of ECE291 knowledge, Where to go
from here..
and the last day of class
Return to ECE291 Home Page
Copyright 1996, 1997, 1998
John Lockwood