CPE303 week 1
MICROPROCESSORS
DR. OĞUZHAN MENEMENCIOĞLU
OUTLINE
Introduction to Course
The Syllabus
About course
Textbook Introduction to Microprocessors
General guidelines and policies Number systems & operations
Tentative grading A basic overview of computer architecture
Let’s Just remember!
Content
2/90
OUTLINE
Number Systems
Digits
Positional Notation
Conversion from Decimal
Conversion to Decimal
Whole Number Conversion from Decimal
Converting from a Decimal Fraction
Binary-Coded Hexadecimal
Complements
3/90
INTRODUCTION
WEEK 1
THE SYLLABUS
This is CPE303 \ CME 321 – Microprocessors
Objective – A basic understanding of computer architecture, specifically microprocessors programing.
5/90
ABOUT COURSE
Instructor: Dr. Oğuzhan MENEMENCİOĞLU
e-mail Address:
[email protected] Web page: http://oguzhan.menemencioglu.com/2021F_CPE303
Presentation may be shared in this web page. The sharing notes is not core business of the lecturer. So, you
should take a note for yourself.
Telegram announcement channel : https://bit.ly/3nxgzTO (In English)
: https://bit.ly/2GBxhks (Türkçe)
After this course, immediately join the channel!
6/90
TEXTBOOK
The Intel Microprocessors, by
Brey, Prentice Hall, 5th Edition.
The 80x86 IBM
PC and Compatible Computer,
by M. A. Mazidi &. J. G. Mazidi,
Prentice Hall, 4th Edition.
Computer System Architecture,
by M. Morris Mano, 3th Edition.
USEFUL BOOKS
Microprocessor Architecture, Programming, and Applications with the 8085 by Ramesh S. Gaonkar, Prentice Hall, 5th
Edition. 7/90
X86 Tabanlı Mikroişlemci Mimarisi ve Assembly Dili, by Nurettin Topaloğlu, Seçkin Yayıncılık, 3. basım (In Turkish)
GENERAL GUIDELINES AND POLICIES
▪ Generally a quiz each week. Quiz will not necessarily be announced each week. NO MAKEUP QUIZZES
▪ Homework due prior midnight of the next classes after assigned. Homework will be delivered by submitting to
Turnitin. Turnitin will close on due date. NO LATE HOMEWORKS will be accepted by system. No submissions
after due date via email will be graded.
▪ Midterm and Final exam will be announced by deanery.
8/90
TENTATIVE GRADING
Grading
Midterm: 40%
Exam: 85%
Lab-Assignments-Quiz 15% (Max.)
Final: 60%
Exam: 85%
Lab-Assignments-Quiz 15% (Max.)
Attendance is required in all course hours and labs for new students.
9/90
LET’S JUST REMEMBER!
TRANSFORMATION HIGH LEVEL COMPUTER LANGUAGES TO MACHINE LANGUAGE
COMPUTER LANGUAGES
Machine Language – A collection of binary numbers
Not standardized. There is a different machine language for every processor family.
Assembly Language - mnemonic codes that corresponds to machine language
instructions.
Low level: Very close to the actual machine language.
High-level Languages - Combine algebraic expressions and symbols from English
High Level : Very far away from the actual machine language
For example: Fortran, Cobol, C, Prolog, Pascal, C#, Perl, Java.
11/90
EXAMPLE
Memory addresses Machine Language Assembly
Instructions Language
Instructions
00000000 00000000 CLA
00000001 00010101 ADD A
00000010 00010110 ADD B
00000011 00110101 STA A
00000100 01110111 HLT
00000101 ? A?
00000110 ? B? 12/90
13/90
EXAMPLE OF COMPUTER LANGUAGES
char name[40];
C Source Code: printf("Please enter your name\n");
scanf("%s", name);
printf("Hello %s", name);
push offset string "Please enter your name\n"
(41364Ch)
call dword ptr [__imp__printf (415194h)]
add esp,4
lea eax,[name]
push eax
push offset string "%s" (413648h)
Assembly Code: call dword ptr [__imp__scanf (41519Ch)]
add esp,8
lea eax,[name]
push eax
push offset string "Hello %s" (41363Ch)
call dword ptr [__imp__printf (415194h)]
add esp,8
68 4C 36 41 00 FF 15 94 51 41 00 83 C4 04 8D 45 D8
Machine Code: 50 68 48 36 41 00 FF 15 9C 51 41 00 83 C4 08 8D 45
14/90
D8 50 68 3C 36 41 00 FF 15 94 51 41 00 83 C4 08
CONTENT
SYNOPSIS
The microprocessor is a general-purpose programmable logic device.
Understanding the microprocessor concepts is crucial in understanding the operation of digital computer.
This course is an introduction to the basic concept of microprocessor architecture and operation, programming
model, pins configuration and microprocessor interfacing.
The content of the course is divided into three sections:
microprocessor architecture,
programming and
interfacing input/output.
The course is designed around the Intel 16-bit microprocessor (8086) and its assembly language.
16/90
OUTCOMES
At the end of the course, student should be:
Able to understand the basic operation of microprocessor.
Able to understand the basic concept of microprocessor architecture and its pins configuration.
Able to understand the machine language programs.
Able to design and write programs in assembly language.
Able to understand the basic concept of microprocessor input/output interfacing
17/90
COURSE OVERVIEW
Introduction to Microcomputers and Microprocessors
The 8086 Processor Architecture, Internals, Registers,
Flags, Segments
BIOS and DOS interrupts
8086 Address Space, Memory, Registers, and data transfers
Memory and Memory Interfacing for 80x86
Address Modes
Input / Output Interface Circuits and
Basic Instruction Set
Peripheral Devices
Basic Arithmetic Instructions
Logical, Shift and Rotate, Data Testing
The remaining instructions
18/90
LET’S WARM UP!
INITIAL QUESTIONS
What does the “micro” mean?
What does the “computer” mean?
What does the “microprocessor” mean?
20/90