Please send all questions and assignments to
your instructors:
srivaaz@gmail.com
daniel.solarek@utoledo.edu

 

EET 2230
Assembly Language Programming
Course Outline

The table below lists a tentative outline of topics to be covered as part of this course. It is tentative because it may change as the course progresses. Changes are typically initiated by the instructor in recognition of how well students are reacting to the material. Since topics may change as we work through the course, it is strongly recommended that you consult this page on a regular basis. Every day or so is recommended.

Normally, we will cover two lessons per week during a fifteen (15) week semester. Assignments are due as indicated in the table below. Any variation from this schedule will be announced on the course Listserv. Use this link to subscribe to the course Listserv. You are expected to subscribe within the first week of classes. If you have difficulty with the course Listserv contact the instructor or TA for help.

The final exam for this course is to be taken "on campus" in a face-to-face manner. This means that, if practical, you will come to the University of Toledo to take the final exam. If you live far from the UT main campus, you can work with the instructor and TA to arrange to take the exam at a community or technical college campus near to where you live or work. Please notify the instructor and TA if you need to make such an arrangement.

The current academic calendar for The University of Toledo can be found on the University's web site. Consult the 2008-2009 academic calendar to determine important dates for the spring 2009 semester (e.g., last day to change schedule, last day to withdraw, holidays, etc.).

 

Lesson Topics Reading Assignment  Posted
1 Introduction and Course Overview
Master Syllabus 
Introduction for Distance Learning Students
Reading Assignment: Assembly Language Programming 
Software Architecture of the 8088 and 8086 Microprocessors
Microarchitecture of the 8088 and 8086 Microprocessors

Software Model of the 8088/8086 Microprocessor
Online Syllabus
 
Triebel and Singh
Ch. 2.1, 2.2
2 Memory Address Space and Data Organization
Data types
Triebel and Singh
Ch.2.3, 2.4
Laboratory Tutorial 1
3 Segment Registers and Memory Segmentation
Dedicated, Reserved, and General-use Memory
Instruction Pointer
Triebel and Singh
Ch.2.5, 2.6, 2.7
Laboratory Tutorial 2     
4 Data Registers
Pointer and Index Registers
Triebel and Singh
Ch. 2.8, 2.9
Laboratory Tutorial 3
A Assignment1  and Labs 1,2 and 3   Due: 1/26/2009
5 Status Register
Generating a Memory Address
Triebel and Singh
Ch.2.10, 2.11
6 The Stack
Input/Output Address Space
 
Triebel and Singh
Ch. 2.12, 2.13
Laboratory Tutorial 4
7 Assembly Language Programming
Software: The Microcomputer Program
Triebel and Singh
Ch.3.1
8 Assembly Language Program Development on the PC Triebel and Singh
Ch. 3.2
Laboratory Tutorial 5     
B Assignment#2  and Labs 4 & 5   Due: 2/9/2009
9 The Instruction Set Triebel and Singh
Ch. 3.3
Laboratory Tutorial 6     
10 The MOV Instruction Triebel and Singh
Ch. 3.4
C    
11 Addressing Modes
Triebel and Singh
Ch. 3.5
Laboratory Tutorial 7     
12 Machine language Coding and the DEBUG Software Development Program of the IBM PC
Converting Assembly Language Instructions to Machine Code
 
Encoding a Program in Machine Code 

Triebel and Singh
Ch. 4.1, 4.2
Laboratory Tutorial 8
I TEST#1   2/20/2009
13 The PC and its DEBUG Program 
The PC and its Debug Program 
Examining and modifying the contents of Memory 
Examining and modifying the contents of Memory 
Triebel and Singh
Ch. 4.3, 4.4
Laboratory Tutorial 9
14 Input and Output of Data 
Input and Output of Data 
Hexadecimal Addition and Subtraction 
Hexadecimal Addition and Subtraction 
Triebel and Singh
Ch. 4.5, 4.6
15 Loading, Verifying, And Saving Machine Language Programs 
Loading, Verifying, And Saving Machine Language Programs 
Assembling Instructions with the Assemble command 
Assembling Instructions with the Assemble Command 
Triebel and Singh
Ch. 4.7, 4.8
Laboratory Tutorial 10      
16 Executing Instructions and Programs with the Trace and Go Commands 
Executing Instructions and Programs with the Trace and Go Commands 
Debugging A Program 
Debugging A Program 
Triebel and Singh
Ch. 4.9, 4.10
D Assignment3  and Labs 7 through 10   Due: 3/9/2009
17 8088/8086 Programming- Integer Instructions and Computations
Data Transfer Instructions
 
Data Transfer Instructions 
Triebel and Singh
Ch. 5.1
Laboratory Tutorial 11      
18 Arithmetic Instructions 
Arithmetic Instructions 
Triebel and Singh
Ch. 5.2
Laboratory Tutorial 12      
19 Logic Instructions 
Logic Instructions 
Triebel and Singh
Ch. 5.3
Laboratory Tutorial 13      
20 Shift Instructions 
Shift Instructions 
Triebel and Singh
 Ch. 5.4
Laboratory Tutorial 14      
E Assignment4   and Labs 11, 12, 13 and 14   Due: 3/17/2009
21 Rotate Instructions 
Rotate Instructions 
Triebel and Singh
Ch. 5.5
22 8088/8086 Programming- Control Flow Instructions and Program Structures
Flag Control Instructions
 
Flag Control Instructions 
Compare Instructions 
Compare Instructions 
Triebel and Singh
Ch. 6.1, 6.2
Laboratory Tutorial 15      
Laboratory Tutorial 16      
     
23 Control Flow and Jump Instructions 
Control FLow and Jump Instructions 
Triebel and Singh
Ch. 6.3
Laboratory Tutorial 17      
24 Subroutines and Subroutine-handling Instructions 
Subroutines and Subroutine-handling Instructions 
Triebel and Singh
Ch. 6.4
Laboratory Tutorial 18
F Assignment5, Labs 15 and Labs 16 Due:
25 Loop and the Loop Handling Instructions 
Loop and the Loop Handling Instructions  
Triebel and Singh
Ch. 6.5
Laboratory Tutorial 19      
26 Strings and String Handling Instructions 
Strings and String Handling Instructions 
Triebel and Singh
Ch. 6.6
Laboratory Tutorial 20      
27 Statement Syntax for a Source program 
Statement Syntax for a Source program 
Triebel and Singh
Ch. 7.1
28 Assembler Directives 
Assembler Directives 
Triebel and Singh
Ch. 7.2
  Labs: Labs 17, Labs 18 (Lab 18 is extra credit) Due:
29 Creating a source file with an Editor 
Creating a source file with an Editor 
Assembling and linking programs 
Assembling and linking programs 
Triebel and Singh
Ch. 7.3 , 7.4
30 Loading and Executing a Run Module 
Loading and Executing a Run Module 
Triebel and Singh
Ch. 7.5
FINAL EXAMINATION
       Date will be updated.(On campus, Engineering Tech. Building, Scott Park)


This symbol next to any element indicates that it has been added since the start of the semester. Therefore, you should check these elements even if the lesson has been completed. New information on these pages will be included on any exams.
This symbol next to any element indicates that it has been significantly modified since the start of the semester. Therefore, you should check these elements even if the lesson has been completed. New information on these pages will be included on any exams.




One of these symbols next to a hyperlink indicates the type of file. From top to bottom they are: Portable Document Format (pdf), PowerePoint (ppt), ASCII Text (txt), Microsoft Word (doc) and Compressed (zip). If there is no symbol next to a hyperlink, it is a local web page.
This symbol next to a hyperlink indicates that the link is to an audio file, usually one where the instructor explains some point or topic.
This symbol next to a hyperlink indicates that the link is to an off-site resource. Remember to user your brower's BACK button to return to this page. Please report any "broken" links to the graduate assistant or the instructor.
This symbol in the "Posted" column above indicates that the PowerPoint and any other appropriate materials for the topic have been posted to the Web site. If the checkmark does not appear, the materials are not yet available. Normally, materials will be posted at the beginning of the week in which you are to cover the corresponding topic.

    Click on the button at left to return to the calling page.

There have been visitors since 1/15/2009.

Added to the Web: January 15, 2009.

Web page design by Dan Solarek.

http://cset.sp.utoledo.edu/eet2230/