0% found this document useful (0 votes)
35 views15 pages

Microprocessor & Assembly Language Course

The document outlines the course details for 'Microprocessor & Assembly Language Programming' at Arba Minch University, including prerequisites, course objectives, and a comprehensive course outline. It covers topics such as microprocessor architecture, assembly language programming, and interfacing with I/O devices. Assessment methods and recommended textbooks are also provided.

Uploaded by

ermagesgis
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views15 pages

Microprocessor & Assembly Language Course

The document outlines the course details for 'Microprocessor & Assembly Language Programming' at Arba Minch University, including prerequisites, course objectives, and a comprehensive course outline. It covers topics such as microprocessor architecture, assembly language programming, and interfacing with I/O devices. Assessment methods and recommended textbooks are also provided.

Uploaded by

ermagesgis
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Arba Minch University

Institute of Technology (AmiT)


Faculty of Computing and Software Engineering

Course Title: Microprocessor & Assembly Language Programming


ECTS /Credit Hour: 5/3
Course code: CoSc3025
Prerequisite: Computer Organization & Architecture
Target Group: G3CS
Semester: I
Instructor: Amanuel Bahiru
Contact mail: [Link]@[Link]
Office: Former Agri office
Phone: +251926576198/+251948938400
Class Room : R-011
Consultation Hr . Friday(9:00- 10:00 local time)
COURSE DESCRIPTION
 Microprocessor architecture;

 memory organization;

 Assembly language programming;

 microprocessor assemblers;

 use of microprocessor boards;

 memory and I/O interfaces;

 Programming peripherals;

 interrupt system programming;

 microprocessor system design and applications


Course objectives
On completion of the course successful ,students will be able to:

➢ Become familiar with the basic components of 8086 instruction set

architecture

➢ Inspect/Review and modify 8086 processor registers and memory.

➢ Use assembler to develop and run assembly language programs.

➢ Identify registry, memory allocation, memory reference techniques,

File processing, modular programming… etc

➢ Identify how to interface serial and parallel I/O devices with a

microprocessor

➢ Write code to process exceptions and interrupts,


COURSE OUTLINE

CHAPTER 1: INTRODUCTION TO MICROPROCESSORS (4hr)

1.1 Introduction to microprocessors

1.2 General architecture of microcomputer system

1.3 Evolution of Intel microprocessors

1.4 Architectural compatibility

1.5 Hardware and software

1.6 Review of the basic number systems and conversion between different number systems
CHAPTER 2: BASIC ARCHITECTURE OF THE 8088 AND
8086 MICROPROCESSORS (4hr)
2.1 Internal architecture of the 8086/8088 microprocessors

2.2 Memory address space and data organization

2.3 Data types

2.4 Segment registers and memory segmentation

2.5 Pointer and index register

2.6 Status and flag register

2.7 The Stack


CHAPTER 3: ADDRESSING MODES (5hr)

3.1 Data-Addressing Modes 3.1.8 Scaled-Index Addressing

3.1.9 RIP Relative Addressing


3.1.1 Register Addressing
3.1.10 Data Structures
3.1.2 Immediate Addressing

3.1.3 Direct Data Addressing


3.2 Program Memory-Addressing
3.1.4 Register Indirect Addressing
Modes
3.1.5 Base-Plus-Index Addressing
3.2.1 Direct Program Memory Addressing
3.1.6 Register Relative Addressing
3.2.2 Relative Program Memory Addressing
3.1.7 Base Relative-Plus-Index
3.2.3 Indirect Program Memory Addressing
Addressing
3.3 Stack Memory-Addressing Modes
CHAPTER 4: INSTRUCTIONS (6hr)

4.1. Data Movement Instructions 4.2: Arithmetic and Logic


4.1 MOV Revisited
instructions

4.2 PUSH/POP
4.2.1 Arithmetic Instructions

4.3 Load-Effective Address


4.2.2 Basic Logic Instructions

4.4 String Data Transfers


4.2.3 Shift and Rotate

4.5 Miscellaneous Data Transfer 4.2.4 String Comparisons


Instructions
CHAPTER 5: PROGRAM CONTROL INSTRUCTIONS (4hr)

5.1 The Jump Group


5.4 Introduction to Interrupts
5.1.1 Unconditional Jump (JMP) 5.4.1 Interrupt Vectors
5.1.2 Conditional Jumps and 5.4.2 Interrupt Instructions
Conditional Sets 5.4.3 Interrupt Control

5.2 Controlling the Flow of the Program 5.5 Machine Control and Miscellaneous

5.2.1 LOOP Instructions

5.2.2 REPEAT 5.5.1 Flag Control Instructions

5.3 Procedures 5.5.2 WAIT

5.3.1 CALL 5.5.3 HLT

5.3.2 RET 5.6. NOP


CHAPTER 6: 8086/8088 HARDWARE SPECIFICATIONS (5hr)

6.1 Pin-Outs and the Pin Functions

6.2 Clock Generator (8284A)

6.3 Bus Buffering and Latching

6.4 Bus Timing

6.5 Ready and the Wait State

6.6 Minimum Mode versus Maximum Mode


CHAPTER 7: INTERFACE (4hr)
7.1 Memory Interface

7.1.1 Memory Devices

7.1.1 Memory Pin Connections

7.2 I/O Interface

7.2.1 Introduction to I/O Interface

7.2.2 I/O Port Address Decoding

7.2.3 The Programmable Peripheral Interface

7.2.4 Analog-to-Digital (ADC) and Digital-to-Analog (DAC)

Converters
CHAPTER 8: INTERRUPTS (4hr)
8.1 Basic Interrupt Processing

8.1.1 The Purpose of Interrupts

8.1.2 Interrupts

8.1.3 Interrupt Instructions: INTO, INT, INT 3, and IRET

8.1.4 The Operation of a Real Mode Interrupt

8.1.5 Operation of a Protected Mode Interrupt

8.1.6 Interrupt Flag Bits

8.1.7 Storing an Interrupt Vector in the Vector Table

8.2 Hardware Interrupts


LABORATORY OUTLINE
 Lab Environment setup
 Assembly language instructions
Week 1  Registers
 Compiling and testing assembly codes

Week 2  Week2 Simple Assignment and Arithmetic Operations


 Data storage and Variables
 Moving Data

Week 3  Simple assignment and Arithmetic Operations


 Addition , Subtraction
 Register Reference
 Multiplication and Division

Week 4  Control Statements


 Jumps, Labels and Flags

Week 5 Conditional Statements


Complex and Compound Conditional Expressions
If then else conditional Expression
Continued…
 Looping Instructions
Week 6

Week 7  Arrays and Pointers

Week 8  Addressing Data in CPU

 Simple Addressing Register (Immediate and Direct)

Week 9  Subroutine and Stack

 Calling and Returning from Subroutine

 Pushing and Popping Stack

Week 10
 Recursion
Teaching- learning methods
Three contact hours of lectures and two hours of tutorials per
week. Students do home assignments.

Assessment methods

Assignments/quizzes 10%
Mid semester examination 20%
Project 20%
Final examination 50%
Teaching materials
Text Books:

– The Intel Microprocessors 8086/8088, 80186/80188, 80286, 80486, Pentium and


Pentium processor –

– Architecture, Programming and Interfacing by Barry B Brey. 4th Edition, prentice


Hall – India – 2002

References:

➢ Ouglas v. Hall 'Microprocessors and Interfacing', Tata McGraw hill


➢ Uffenbeck 'Microcomputers and Interfacing', prentice hall
➢ Ram 'Fundamentals of Microprocessors and Microcomputers', Dhanpat Rai Ompkins
'PC interfacing', prentice hall
➢ Richard Trooper, Assembly Language Programming the IBM PC, McGraw Hill, 1994
➢ Vlad Pirogov, the Assembly Programming Master Book, 2006
➢ Peter Abel, IBM PC Assembly Language and Programming, 5h Edition, 2001.

You might also like