CSC 200 - Introduction to Computer Organization

Spring 2005

Syllabus
Assignments
Batch file for assembling within a Visual Studio command prompt.
ZIP file with Graphical Windows assembler examples.
ZIP file with Visual Studio C++/Assembler examples.
ZIP file with BIOS/Direct video write examples (16-bit programs).
ZIP file with Floating-point examples.

Useful WWW Links

Schedule
Tuesday Thursday
Jan 17

1.1 – Introduction to Assembler
1.2 – Assembler History
1.3.1 – Binary Numbers

Jan 19

1.3.2 – Binary Addition
1.3.3 – Integer Sizes
1.3.4 – Hex Integers

Jan 24

1.3.5 – Signed Integers
1.3.6 – Character Representation
1.4 – Boolean Operations
2.1 – General IA-32 Concepts

Jan 26

2.2 – IA-32 Processor Architecture
2.3 – IA-32 Memory Management
2.4 – CPU Components
2.5 – I/O System

Jan 31

3.1 – Basic Elements of Assembly
3.2 – Example: Add 3 Integers
3.3 – Assembling, Linking, Running Programs
Debugging using Visual Studio

Feb 2

3.4 – Defining Data
3.5 – Symbolic Constants
4.1 – Data Transfer Instructions

Feb 7

4.2 – Addition/Subtraction
4.3 – Data-Related Operators
4.4 – Indirect Addressing
4.5 – Jump/LOOP Instructions

Feb 9

Lab Exercise

Feb 14

5.2 – Linking to an External Library
5.3 – The Book’s Link Library
5.4 – Stack Operations

Feb 16

5.5 – Defining and Using Procedures
5.6 – Program Design w/ Procedures
6.2 – Boolean/Comparison Instructions
6.3 – Conditional Jumps

Feb 21

6.5 – Conditional Structures

Feb 23

Lab Exercise

Feb 28

Test 1

Mar 2

7.2 – Shift/Rotate Instructions
7.3 – Shift/Rotate Applications
7.4 – Mul/Div Instructions

Mar 7

7.5 – Extended Add/Sub
8.2 – Local Variables
8.3 – Stack Parameters

Mar 9

8.4 – Stack Frames
8.5 – Recursion
8.6 – Multimodule Programs

Spring Break
Mar 21

9.3 – String Procedure Examples
9.4 – Two-dimensional Arrays
9.5 – Searching/Sorting Arrays
10.1 – Structures

Mar 23

10.2 – Macros
10.3 – Conditional Assembly Directives
How Assemblers Work

Mar 28

Lab Exercise

Mar 30

11.1 – Win32 Console Programming
11.2 – Win32 Graphical Programming

Apr 4

11.3 – IA-32 Memory Management
12.2 – Inline Assembly Code
12.3 – Linking to C++ Code

Apr 6

Lab Exercise

Apr 11

13.1 – MS-DOS and the PC
13.2 – MS-DOS Function Calls
13.3 – MS-DOS File Calls

Apr 13

14.1 – Disk Storage Systems
14.2 – File Systems
14.3 – Disk Directory
14.4 – Reading/Writing Sectors
14.5 – System-Level File Functions
15.2 – BIOS Keyboard Input

Apr 18

Test 2

Apr 20

15.3 – BIOS Video Programming
15.4 – Graphics using INT 10h
15.5 – Memory-Mapped Graphics
15.6 – BIOS Mouse Programming

Apr 25

Floating Point Numbers

Apr 27

Floating Point Numbers

May 2

Lab Exercise

May 4

Review

Return to my Home Page

Go to the Computer Science Department Home Page