2. BASED AND INDEXED ADDRESSING MODE
• ADDRESSING MODE
• TYPES OF ADDRESSING MODE
• BASED ADDRESSING MODE AND DISPLACEMENT
• EXAMPLE
• INDEXED ADDRESSING MODE
• EXAMPLE
• DIFFERENCE BETWEEN BASED AND INDEXED ADDRESSING MODE
3. ADDRESSING MODE
THE ADDRESSING MODE DEAL WITH THE SOURCE AND
DESTINATION OF THE DATA REQUIRED BY THE
INSTRUCTION. THIS CAN BE EITHER A REGISTER OR A
LOCATION IN MEMORY OR EVEN A PORT.
4. TYPES OF ADDRESSING MODES
• REGISTER ADDRESSING
• IMMEDIATE AND DIRECT ADDRESSING
• INDIRECT ADDRESSING
• INDEXED ADDRESSING
• BASED ADDRESSING
• BASED-INDEXED ADDRESSING
5. BASED ADDRESSING MODE
THE OPERAND FIELD OF THE INSTRUCTION CONTAINS A BASE REGISTER (BX OR BP) AND
AN 8-BIT (OR 16-BIT) CONSTANT (DISPLACEMENT) .IT IS USED IN ONE DIMENSIONAL
ADDRESS.
DISPLACEMENT:
THE OPERAND’S OFFSET ADDRESS IS OBTAINED BY ADDING A NUMBER CALLED A
DISPLACEMENT TO CONTENTS OF A REGISTER.
THE SYNTAX OF AN OPERAND IS ANY OF THE FOLLOWING:-
1) [ REGISTER + DISPLACEMENT ]
2) [ DISPLACEMENT + REGISTER ]
3) [REGISTER ] + DISPLACEMENT
4) DISPLACEMENT + [ REGISTER ]
5) DISPLACEMENT[REGISTER ]
6. EXAMPLES OF BASED ADDRESSING MODE
1) MOV AX , W[BX]
IT CAN ALSO BE WRITTEN AS:-
MOV AX ,[W+BX]
MOV AX, [BX+W]
MOV AX, W+[BX]
MOV AX,[BX]W
7. EXAMPLE 10.5
WRITE SOME CODE TO SUM IN AX USING BASE
MODE THE ELEMENTS OF THE 10-ELEMENT ARRAY
W DEFINED BY
W DW 10,20,30,40,50,60,70,80,90,100
SOLUTION:
XOR AX , AX
XOR BX,BX
MOV CX,10
ADDNOS :
ADD AX,W[BX ]
ADD BX,2
LOOP ADDNOS
8. INDEXED ADDRESSING MODE
THE EFFECTIVE ADDRESS OF THE OPERAND IS GENERATED BY ADDING A CONSTANT VALUE TO
THE CONTENTS OF THE REGISTER.
ITS USED MAY BE EITHER A SPECIAL FUNCTION REGISTER OR GENERAL PURPOSE REGISTER ,THE
REGISTER WHICH WE USE HERE IS KNOWN AS “INDEX REGISTER".
WE INDICATE THE INDEX MODE SYMBOLICALLY AS X(RI).THIS IS USEFUL IN DEALING WITH LISTS
AND ARRAYS.
FOR EXAMPLE :-
ADD AX , [ DI + 20 ]
ADD AX , TABLE1 [ SI ]
9. EXAMPLE 10.7:-
REPLACE EACH LOWER CASE LETTER IN THE
FOLLOWING STRING BY ITS UPPER CASE EQUIVALENT.
USE INDEX ADDRESSING MODE
MSG DB ‘THIS IS A MESSAGE’
MOV CX,17
XOR SI,SI
TOP:
CMP MSG [ SI ], ’ ’
JE NEXT
AND MSG [ SI ], 0DFH
NEXT:
INC SI
LOOP TOP