Professional Documents
Culture Documents
Language Programming
(CoSc3025)
Prerequisite: CoSc2022 Computer Organization
and Architecture
By Arba A.(MSc.)
Feb , 2024
CH-1: Introduction to Microprocessor
Introduction to microprocessors
3/15/2024 8
STEPS
Step-1
• Purchase a microprocessor, available from many
manufacturers and commonly found online or
from an electronics store
Step-2
• Write the program in the Integrated Development
Environment (IDE) software for your
microprocessor, which will compile the code into
a language the machine can understand
3/15/2024 9
Step-3
Test the program using the IDE simulation
package. Once you have embedded the
program into your microprocessor, you will
find it extremely difficult to debug and find
errors
Step-4
Embed your program onto your
microprocessor.
3/15/2024 10
ARITHMETIC COPROCESSOR
A coprocessor is a chip that works side-by-side
with the computer's main processor (the chip
called the central processing unit, or CPU).
A coprocessor is installed to reduce the
burden on a computer's CPU and thus free it
for more general duties such as transferring
data and handling multiple tasks
3/15/2024 11
The coprocessor handles some of the more
specialized tasks, such as doing math calculations or
displaying graphics on the screen
Example for coprocessor
• Intel 8087
The Intel 8087, announced in 1980, was the first x87
floating-point coprocessor for the 8086 line of
microprocessors.
3/15/2024 12
The purpose of the 8087 was to speed up
computations for floating-point arithmetic, such
as addition, subtraction, multiplication, division,
and square root.
3/15/2024 13
Functions of coprocessor
A coprocessor may not be a general-purpose
processor in its own right.
Coprocessors cannot fetch instructions from
memory, execute program flow control
instructions, do input/output operations, manage
memory, and so on.
The coprocessor requires the host (main)
processor to fetch the coprocessor instructions and
handle all other operations aside from the
coprocessor functions.
3/15/2024 14
General architecture of microcomputer
system
A Microcomputer is a small, relatively
inexpensive digital computer with a microprocessor as
its central processing unit (CPU).
3/15/2024 15
Microcomputer block diagram
3/15/2024 17
Microcomputer …
3/15/2024 21
Evolution of Intel microprocessors
• The 1st microprocessor was invented by INTEL(Integrated
Electronic) in 1971….4004
• Fairchild Semiconductors (founded in 1957) invented the first IC
in 1959.
• In 1968, Robert Noyce, Gordan Moore, Andrew Grove
resigned from Fairchild Semiconductors.
• They founded their own company Intel (Integrated Electronics).
• Intel grown from 3 man start-up in 1968 to industrial giant by
1981.
• It had 20,000 employees and $188 million revenue.
First Generation (4 - bit Microprocessors)
• We can categorize the microprocessor according to the generations or
according to the size of the microprocessor:
80386 1985 32-bit 4GB real, 64TB 132 14X14 PGA 20-33 MHz Contains MMU
virtual on chip
80486 1989 32-bit 4GB real, 64TB 168 17X17 PGA 25-100 MHz Contains MMU,
virtual cache and FPU,
1.2 million
Transistors
Pentium 1993 32-bit 4GB real,32-bit 237 PGA 60-200 Contains 2 ALUs,2
address,64-bit data Caches, FPU, 3.3
bus Million transistors,
3.3 V, 7.5 million
transistors
Pentium Pro 1995 32-bit 64GB real, 36-bit 387 PGA 150-200 MHz It is a data flow
address bus processor. It
contains second
level cache also,3.3
V
Pentium III 1999 32-bit 64GB 370 PGA 600-1.3 MHz Improved version
of Pentium II; 70
new SIMD
instructions
Pentium 4 2000 32-bit 64GB 423 PGA 600-1.3 GHz Improved version
of Pentium III
Itanium 2001 64-bit 64 address lines 423 PGA 733 MHz-1.3 GHz 64-bit EPIC
Processor
Architectural compatibility
39
THE DECIMAL SYSTEM
The decimal system is said to have a base, or radix, of 10.
Example:
The same principle holds for decimal fractions but negative powers of 10
are used.
Example
40
THE BINARY SYSTEM
In the binary system, we have only two digits, 1 and 0.
The digits 1 and 0 in binary notation have the same meaning as in decimal notation:
To represent larger numbers, as with decimal notation, each digit in a binary number
has a value depending on its position:
41
Octal Number System
Is a base-8 system and makes use of the eight digits 0 …. 7.
The base of the octal system is 8.
42
Hexadecimal Number System
Is a base-16 system and makes use of 15 digits 0…. 9, A(10), B(11),
C(12), D(13), E(14), F(15).
The base of the binary system is 16.
6 0110 E 1110
7 0111 F 1111 43
CON VERSIO N
When a decimal number is converted to any other system, the integer
and fraction portions of the number are handled separately.
The radix divide technique is used to convert the integer portion, and
the radix multiply technique is used for the fraction portion.
2. Collect the remainders from each step (last to first) and place them
left to right to form the required number.
44
CON VERSIO N
Radix Divide Technique
Example 1 Decimal to binary
High-Level Language: D = A * B + 10
Link
Source Object
Assembler Libraries
File File
main proc
mov ah,09h
mov dx,offset message
int 21h
mov ah,4ch
mov al,00
int 21h
endp
end main
Add,sub, inc,dec
Input data from keybord
Write a program to add two numbers in assembly
language.
org 100h
.model small
.code
mov ax,3h
mov bx,5h
add ax,bx
add ax,30h
mov ah,02h
mov dx,ax
int 21h
.exit
end
ret
Quiz 1 : 5%
1. Write the difference between assembly language and
high level language(2pts)
2. Write assembly code that display your department
name.