1,885
edits
Changes
Register
,no edit summary
A jump is performed by writing the destination address to the program counter.
A subroutine (function) call is performed by pushing the program counter onto the [[Stack|stack]] or saving it in a designated ''Link Register'' and then writing the subroutine address to the program counter. Upon completion of the subroutine, the return address is popped from the stack or retrieved from the Link Register and written to the program counter.
Relative [[Addressing Mode|addressing modes]] add a signed value to the program counter to calculate the effective address.