You are on page 1of 44

Made By:

Ali Faisal Murtaza


IP 8-bit 00000
Address Bus: 20-Bit 5A 00001
CS
Data Bus: 8-Bit
DS
SS
Memory
ES Address Bus: 20-Bit

Data Bus: 8-Bit

FFFFF
Memory
IP 8-bit 00000
5A 00001
2000 (0)
CS 2000

DS 20000
Address Bus: 20-Bit Code
SS
ES

Data Bus: 8-Bit

FFFFF
Memory
IP 0000 8-bit 00000
2000 0 + 5A 00001
0000 =
CS 2000 20000
DS 20000
Address Bus: 20-Bit
SS
ES

Data Bus: 8-Bit

FFFFF
Memory
IP 0001 8-bit 00000
2000 0 + 5A 00001
0001 =
CS 2000 20001
DS 20000
Address Bus: 20-Bit
SS 20001
ES

Data Bus: 8-Bit

FFFFF
Memory
IP FFFF
8-bit 00000
2000 0 + 5A 00001
FFFF =
CS 2000

DS 2FFFF
20000
Address Bus: 20-Bit
SS 20001
ES

Data Bus: 8-Bit


2FFFF

FFFFF
Memory
IP FFFF
8-bit 00000
5A 00001
CS 2000

DS 20000
Address Bus: 20-Bit
SS 20001
ES Code = 64 k Byte
Data Bus: 8-Bit
2FFFF

FFFFF
Memory
IP FFFF
8-bit 00000
5A 00001
4000 (0)
CS 2000

DS 4000 20000
Address Bus: 20-Bit
SS
ES 40000

Data Bus: 8-Bit


SI
DI

FFFFF
Memory
IP FFFF
8-bit 00000
5A 00001
5000 (0)
CS 2000

DS 4000 20000
Address Bus: 20-Bit
SS 5000
ES 40000

Data Bus: 8-Bit


SP 50000
BP

FFFFF
Memory
IP FFFF
8-bit 00000
5A 00001
AF00 (0)
CS 2000

DS 4000 20000
Address Bus: 20-Bit
SS 5000
ES AF00 40000

Data Bus: 8-Bit


50000

AF000

FFFFF
Memory
IP FFFF
8-bit 00000
-A 100
5A 00001
CS 2000 2000 0 + 100
DS 4000 = 20100
20000
SS 5000
ES AF00
20100

Address Bus: 20-Bit

2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP FFFF
8-bit 00000
-A 100
5A 00001
CS 2000 2000:0100 MOVAX,1001
2000:0101 MOV BX,0002
DS 4000 20000
2000:0102 ADD AX,BX
SS 5000
2000:0103 PUSH AX MOVAX, 1001
ES AF00 20100
MOVBX, 0002 20101
Address Bus: 20-Bit ADD AX, BX 20102
PUSH AX 20103

Data Bus: 8-Bit 2FFFF


FFFFF
Memory
IP FFFF
8-bit 00000
-Execute Code
5A 00001
CS 2000 2000 0 + FFFF =
DS 4000 2FFFF
20000
SS 5000
MOVAX, 1001
ES AF00 20100
MOVBX, 0002 20101
Address Bus: 20-Bit ADD AX, BX 20102
PUSH AX 20103

Data Bus: 8-Bit 2FFFF


FFFFF
Memory
IP FFFF
0100
8-bit 00000
-Execute Code
5A 00001
CS 2000 2000 0 + 0100 =
DS 4000 20100
20000
SS 5000
MOVAX, 1001
ES AF00 20100
MOVBX, 0002 20101
Address Bus: 20-Bit ADD AX, BX 20102
PUSH AX 20103

Data Bus: 8-Bit 2FFFF


FFFFF
Memory
IP 0100 CS 2000 Registers 8-bit 00000

CPU BUS
20000

Arith
Control Unit MOVAX, 1001
20100
metic
Logic Instruction MOVBX, 0002 20101
Unit Decoder
ADD AX, BX 20102
PUSH AX 20103

2FFFF

FFFFF
Memory
IP 0100 CS 2000 Registers
8-bit 00000
CPU BUS
20000

Arith Control Unit


metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100 CS 2000 Registers
8-bit 00000

20000
2000(0) + 0100 =
20100
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100 CS 2000 Registers
8-bit 00000

20000

Arith 20100
Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100 CS 2000 Registers
8-bit 00000

20000
Read
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20100


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100 CS 2000 Registers
8-bit 00000

Read 20000

Arith Control Unit


metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20100


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100 CS 2000 Registers
AX = 1001
8-bit 00000

Read 20000

Arith Control Unit


metic 1001
MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20100


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0101 CS 2000 Registers
8-bit 00000

20000
2000(0) + 0101 =
20101
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0101 CS 2000 Registers
8-bit 00000

20000

Arith 20101
Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0101 CS 2000 Registers
8-bit 00000

20000
Read
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20101


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0101 CS 2000 Registers
8-bit 00000

Read 20000

Arith Control Unit


metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20101


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0101 CS 2000 Registers
BX = 0002
8-bit 00000

Read 20000

Arith Control Unit


metic 0002
MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX,
MOVBX, 0002
0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20100


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0102 CS 2000 Registers
8-bit 00000

20000
2000(0) + 0102 =
20102
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0102 CS 2000 Registers
8-bit 00000

20000

Arith 20102
Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0102 CS 2000 Registers
8-bit 00000

20000
Read
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20102


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0102 CS 2000 Registers
8-bit 00000

Read 20000

Arith Control Unit


metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20102


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0102 CS 2000 Registers
BX
AX = 0002
1001
1003
1001
0002 8-bit 00000

Read 20000

Arith Control Unit


1003
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit ADD AX, BX
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20102


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0103 CS 2000 Registers
8-bit 00000

20000
2000(0) + 0103 =
20103
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
8-bit 00000

20000

Arith 20103
Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
8-bit 00000

20000
Read
Arith Control Unit
metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20103


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
8-bit 00000

Read 20000

Arith Control Unit


metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20103


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003
8-bit 00000
SS 5000

SP 0FFE
Read 20000

Arith Control Unit


metic MOVAX, 1001
20100
Logic Instruction
Decoder
MOVBX, 0002 20101
Unit PUSH AX
ADD AX, BX 20102
Control Bus PUSH AX 20103

Address Bus: 20-Bit 20103


2FFFF
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003 5000 0 +
8-bit 00000
SS 5000 0FFE =
20000
SP 0FFE
50FFE Read MOVAX, 1001 20100
MOVBX, 0002 20101
Arith Control Unit
metic ADD AX, BX 20102
Logic Instruction
Decoder
PUSH AX 20103
Unit PUSH AX
2FFFF
Control Bus
50FFE
Address Bus: 20-Bit 20103

Data Bus: 8-Bit


FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003 5000 0 +
8-bit 00000
SS 5000 0FFC =
20000
SP 0FFC
50FFC Read MOVAX, 1001 20100
MOVBX, 0002 20101
Arith Control Unit
metic ADD AX, BX 20102
Logic Instruction
Decoder
PUSH AX 20103
Unit PUSH AX
2FFFF
Control Bus
50FFE
Address Bus: 20-Bit 20103 50FFD
50FFC
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003
8-bit 00000
SS 5000
5000
20000
SP 0FFC
0FFC
MOVAX, 1001
20100
MOVBX, 0002 20101
Arith Control Unit
metic 50FFC ADD AX, BX 20102
50FFC
Instruction
Logic PUSH AX 20103
Unit Decoder
PUSH AX
2FFFF
Control Bus
50FFE
Address Bus: 20-Bit 20103 50FFD
50FFC
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003
8-bit 00000
SS
03 5000
20000
SP 0FFC
MOVAX, 1001
20100
MOVBX, 0002 20101
Arith Control
metic WriteUnit ADD AX, BX 20102
Logic Instruction
Decoder
PUSH AX 20103
Unit PUSH AX
2FFFF
Control Bus
50FFE
Address Bus: 20-Bit 50FFC 50FFD
50FFC
Data Bus: 8-Bit
FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003
8-bit 00000
SS 5000
20000
SP 0FFC
MOVAX, 1001
Write 20100
MOVBX, 0002 20101
Arith Control Unit
metic ADD AX, BX 20102
Logic Instruction
Decoder
PUSH AX 20103
Unit PUSH AX
2FFFF
Control Bus
50FFE
Address Bus: 20-Bit 50FFC 50FFD
03 50FFC
Data Bus: 8-Bit 03

FFFFF
Memory
IP 0100
0103 CS 2000 Registers
AX = 1003
8-bit 00000
SS 5000
20000
SP 0FFC
MOVAX, 1001
Write 20100
MOVBX, 0002 20101
Arith Control Unit
metic ADD AX, BX 20102
Logic Instruction
Decoder
PUSH AX 20103
Unit PUSH AX
2FFFF
Control Bus
50FFE
10
Address Bus: 20-Bit 50FFD 50FFD
03 50FFC
Data Bus: 8-Bit 10

FFFFF

You might also like