Uploaded by Soumyadip Mandal

Addressing Modes

The addressing mode specifies a rule for interpreting or modifying the address field of the
instruction before the operand is actually executed.
An assembly language program instruction consists of two
• Starting address of memory segment.
• Effective address or Offset: An offset is determined by adding any
combination of three address elements: displacement, base and
• Displacement: It is an 8 bit or 16 bit immediate value given in the
• Base: Contents of base register, BX or BP.
• Index: Content of index register SI or DI.
• Stack Addressing Mode
• In this mode, operand is at the top of the stack. For example: ADD,
this instruction will POP top two items from the stack, add them, and
will then PUSH the result to the top of the stack.
• Auto Increment Addressing Mode
• In auto-increment addressing mode once the content of the register is accessed
by the instruction the register’s content is incremented to refer the next operand.
• Symbolically it is represented as below:
• (R)+
• Here, the effective address is content of the register as it is enclosed by
parenthesis. The content of register which is referring to a memory location is
incremented so that it could point the next memory location where the next
operand is stored.
• Auto Decrement Addressing Mode
• It is just opposite of auto-increment mode. In auto decrement mode the
content of the register is decremented initially and then the decremented
content of the register is used as effective address.
• Symbolically it is presented as:
• -(R)
• The auto-increment and decrement mode help to implement the stack
• The most appropriate matching for the following pairs is-