You are on page 1of 20

Programmers Model 8086-80486

Programmers Model

8086
Data
Bus
Control
signals
Add
Bus
A
0
A
19

D
0
D
15

A
19
A
0
0.0 00000
H

1.1
FFFFF
H

Memory
Address
Space
00000
H

FFFFF
H


Fetches Instruction

Executes Instruction
BIU
EU
BIU
ALU
Control
& Timing
EU
Address bus
RAM ROM
I/o
Ports
Discs
Video
Data Bus
CLK
IP 16bit
CS
DS
ES
SS
Code
Data
Extra
Stack
Instruction Pointer
Programmers Model :
Code Segment
Data Segment
Extra Segment
Stack Segment
Code Segment
Data Segment
Extra Segment
Stack Segment
Code Segment/Data
Segment
Data Segment
Extra Segment
Stack Segment
Code Segment
IP = 3000
H

CS = 2000
H
Base address
Offset address
Physical address
= 20000
H
+
3000
H

23000
H

2000
H
: 3000
H

CS
DS
ES
SS
Code Segment
2000 0000
FFFF
3000
Segment Register Starting Address Ending Addresses
2000
H


2001
H


2100
H


AB00
H


1234
H

20000
H


20010
H


21000
H


AB000
H


12340
H

2FFFF
H


3000F
H


30FFF
H


BAFFF
H


2233F
H

Data
Code
Stack
Extra
4900 ES
3400 SS
1000 DS
2000 CS
00000
H

10000
H

20000
H

1FFFF
H

2FFFF
H

34000
H

43FFF
H

49000
H

58FFF
H

AX
BX
CX
DX
SP
BP
SI
DI
Count
Data
Stack Pointer
Base Pointer
Source Index
Destination Index
Accumulator
Base Index
MULTIPURPOSE REGISTERS
AX, BX, CX, DX, BP, DI, SI
SPECIAL PURPOSE REGISTERS
IP, SP, FLAGS

CS, DS, SS, ES
( Segment Registers )
AX
AH
(8 bit)
AL
(8 bit)
BX
BH BL
CX
CH CL
DX
DH DL
(Accumulator)
(Base Register)
(Used as a counter)
(Used to point to data in I/O operations)
8086 Default 16 bit segment and offset address
combinations
Segment offset special purpose
CS


SS


DS


ES
IP


SP (or) BP

BX,DI,SI
an 8-bit number
16 bit number

DI for string
Instructions
Instruction
Address

Stack address


Data address


String destination
address
BIU (Bus Interface Unit)
provides hardware funcns for generation of the memory
and I/O addresses for the transfer of data between
itself and the outside world



EU (Execution Unit)
receives program instruction codes and data from the
BIU executes these instructions and stores the results
in the general- purpose registers

EAX AH AL
EBX BH BL
ECX CH CL
EDX DH DL
EBP BP
ESI SI
EDI DI
ESP SP
EFLAGS FLAGS
EIP IP
CS
DS
ES
SS
FS
GS
A
C
V
M
R
F
N
T
O D I T S Z A P C IOPL

You might also like