














Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
CHAPTER NUMBER 3 -Organization COMPUTER -of-IBM-PC
Typology: Slides
1 / 22
This page cannot be seen from the preview
Don't miss anything!















The Intel 8086 Family of
μ
processors
Organization of the 8088/
μ
processors
Registers
Data Registers
Segment Registers
Pointer and index registers
Instruction Pointer and Flags register
Organization of the PC
The operating System (OS)
I/O Port Address
Start-up Operation
CS 220: Computer Organization and
Assembly Language Programming
4 general purpose Registers: AX, BX, CX, DX
Used for general data manipulation.
They are 16-bit registers that can also be used as two 8 bitregisters:
Low (AL) and High (AH) bytes can be accessed separately
more registers to use when dealing with byte-size data.
In addition to being general-purpose registers, they performspecial functions
RegisterDesignation
Register Name
Function
AX
Accumulator Register
Used in Arithmetic and Logic operations
BX
Base register
Serves also as an address register
CX
Count Register
Program loop constructions
DX
Data Register
Used in multiplication and division. Alsoused in I/O operations.
Is a block of 2
16
(64) K Bytes consecutive memory bytes.
Each segment is identified by a 16-bit number called
segment
number
, starting with 0000 up to FFFFh. Segment registers
hold segment number.
Within a segment, a memory location is specified by givingan
offset
(16-bit). It is the number of bytes from the
beginning of the segment (
FFFFh).
A memory location may be specified by a
segment number and
offset
logical address
Example: A4FB : 4872h
Offset
Is the distance from the beginning to a particular
location in the
segment.
Segment number
Defines the starting of the segment within
the memory space.
Segment
Offset
starts
at address 0000:
00000h
ends
at address 0000:FFFF
0FFFFh
starts
at address 0001:
00010h
ends
at address
1000Fh
The segments start every 10h = 16 bytes
(called Paragraph )
and the starting address of a segment always ends with a hexdigit 0.
Paragraph boundary
is an address divisible by 16.
Segments may overlap, the segment:offset form of an address isnot unique
Program Segments
A typical machine language program consists of:
Instructions ( CODES )
data
Stack: data structure used by the processor to implement procedure calls.
Codes , data , and stack are loaded into different memory segments
Code segment CS :
holds segment number of the code
segment.
Data Segment DS
: holds segment number of the data
segment.
Extra Segment ES
: holds alternate segment number of the
data segment.
Stack Segment SS
: holds segment number of the stack
segment.
A program segment can occupy less than 64 Kbytes.
Overlapping permits program segments that are less than 64 KBto be placed close together.
At any time, only those memory locations addressed by the four segment registers
are accessible;
only 4 memory segments are active. However, the contents of
a segment register can be modified by a program to addressdifferent segments.
IP (Instruction pointer):
Points to the next instruction.
contains
the offset
Used with
contains the
segment number
Flags Register: Bits specify status of CPU and information about the results of
the arithmetic operations.