The 8085 has four different modes for addressing data stored in memory or in registers -
Direct: Bytes 2 and 3 of the instruction contains the exact memory address of the data item( the low-order bits of the address are in byte 2 , the high-order bits in byte 3 ).
Register: The instruction specifies the register or register pair in which the data are located.
Register Indirect: The instruction specifies a register pair which contains the memory address where the data are located .( the high-order bits of the address are in the first register of the pair and the low order bits in the second ).
Immediate: The instruction contains the data itself . This is either and 8-bit quantity or a 16-bit quantity (least significant byte first , most significant byte second ).
Unless directed by an interrupt or branch instruction the execution of instructions proceeds through consecutively increasing memory locations.
A branch instruction can specify the address of the next instruction to be executed in one of two ways -
Direct: The branch instruction contains the address of the next instruction to be executed .
Register Indirect : The branch instruction indicates a register pair which contains the address of the next instruction to be executed .