Professional Documents
Culture Documents
Mupee 1
Mupee 1
➞ Machine languages differ from machine to machine , and are quite similar to one
another, because there are a few basic operations that all machines must
provide
➞ Computer designers have a common goal to find a language that makes it easy to
build the hardware and the compiler while maximizing performance at minimum
cose
➞ The “ simplicity of the equipment” is a valuable consideration for the machine
design ( cisc v/s risc ) . Hence our goal should be to design an instruction set
that follows this logic showing both how it is represented in the hardware and
the relationship between high level languages
➞ TYPE DATA BUS WIDTH MEM SIZE ADDRESS BUS WIDTH CLOCK MHS
8048 8 2K INTERNAL --- ---
8051 8 8K INTERNAL --- ---
8085A 8 64 K --- ---
8086 16 1M 20 5
8088 8 1M 20 5
8096 16 8K INTERNAL --- ---
80186 16 1M 20 6
80188 8 1M -- --
80286 16 16 M 24 8
80386 DX 32 4G 32 16
80386 SL 16 32 M 25 16
2 - 10
1 - 110
0 - 001
PROCESSOR MEMORY
➞ To access a word in memory the instruction must supply the memory address.
LOAD ; MEMORY REGISTER
SEGMENT
GENERAL
REGISTERS
REGISTERS
INSTRUCTION POINTER
ADDRESS
MULTIPLEXED BUS GENERATION AND
BUS CONTROL
OPERANDS
INSTRUCTION
QUEUE
ALU
EU
A SIMPLE ARCHITECTURE for Illustration :
MSB LSB
7 REGISTER A 0
MEMORY
--- ---
64 K MEMORY SPACE
INSTRUCTIONS :
MOV A, B 4Dh B to A
Example:
ASSEMBLY PROCESS:
15 0 15 0
POINTS TO CODE STORES CERTAIN
IP FLAGS RESULTS
INSTRUCTION POINTER AF CF DF IF OF PF SF TF ZF
SPECIAL USES
VARIOUS MATHS., 15 AX 0
I/O DATA 7 AH 0 7 AL 0
POINTER TO 15 BX 0
MEMORY 7 BH 0 7 BL 0
WORKING
(GENERAL
15 CX 0 PURPOSE)
COUNTING
7 CH 0 7 CL 0 REGISTERS
I/O ADDRESSES
VARIOUS 15 DX 0
MATHEMATICS 7 DH 0 7 DL 0
SEGMENT 15 0
REGISTERS CS
CODE SEGMENT REGISTER
15 0
DS
DATA SEGMENT REGISTER
15 0
SS
STACK SEGMENT REGISTER
15 0
ES
EXTRA SEGMENT REGISTER
AF ; a carry out of the result or a borrow into the low nibble of a result
CF ; a carry out of the MSB of a result or a borrow into the result
DF ; forces certain opcodes to process data in memory from high to low
Addresses
IF ; allows the CPU to be interrupted by an externally generated interrupt
OF ; applies only to signed numbers used in a program indicated that the
Result is too large for the signed number range chosen
PF ; the operation generated a result with even number of 1 s in the LSByte
SF ; the result of an operation contains a 1 bit in the MSB position
TF ; performs a software interrupt at the end of the next instruction
ZF ; the last CPU operation resulted in a quantity that contain all binary 0 s
00000h
MEMORY
IP
CS CODE SEGMENT
DS (64 K BYTES)
SS
ES
DATA SEGMENT
( 64 K BYTES)
AH AL AX
BH BL BX
STACK SEGMENT
CH CL CX
(64 K BYTES)
DH DL DX
EXTRA SEGMENT
SP (64 K BYTES)
BP FFFFFh
SI
DI
INTRODUCTION OT MICROPROCESSORS - dnk kumar 10
STATUS REGISTER
ADDRESS SPACE OF 1 M BYTES OF EXTERNAL MEMORY;
FFFFF
FFFFE
FFFFD
FFFFC
FFFFB
FFFFA
FFFF0
- --
- --
- --
- --
00003
00002
00001
00000
Least significant bit of the address, determines the type of word boundary
0 even address boundary
A word at an even address boundary corresponds to 2 consecutive bytes
With the lease significant byte located at even address .
Example :
0072Ch 11111101
MSByte of the work stores at address 0072Ch and equals 11111101 binary = FDh
LSByte is at 0072Bh and is 10101010 binary = AAh
used to access data or code outside the current segment of the memory.
The word of the pointer that is stored at the higher address is called the
Segment-base address and the word at the lower address is called the offset
Value
How should the pointer with segment-base address equal to A000h and offset
address 55FFh be stored at an even-address boundary starting at 00008h ?
Solution :
0000Bh A 0
0000Ah 0 0
00009h 5 5
00008h F F
D3 D0
UNPACKED BCD BYTE
MSB LSB
D7 D4 D3 D0
PACKED BCD BYTE