The default addressing mode for code is sequential addressing, when the instruction pointer (IP) register (IP for 32-bit systems and RIP for 64-bit) contains the address of the instruction following the one being currently executed. There is nothing we need to do in order to put processor into this mode. The instruction pointer is set to the next instruction automatically by the CPU.
For example, when executing the first instruction of the following code, the IP is already set to the address of the next one, labeled as next_instruction. As the first instruction is call, which, as we know, causes the return address to be pushed onto the stack--which, in this particular case, is also the address of next_instruction--the second one (the pop instruction) retrieves the value of the return address from the stack:
call next_instruction
next_instruction:
pop rax
; the rest of the code
The preceding example (or its variations) could be met in the code of different packers and protectors very often and is also used by shellcode writers as a mean of creation of position-independent code, where addresses of procedures and variables can be calculated by adding their offsets from next_instruction to the address of next_instruction.