Section 9: Subroutines 105

Further Information

The Subroutine Return

The pending return condition means that the n instruction occurring subsequent to a G instruction causes a return to the line following the G rather than a return to line 000. This is what makes a subroutine useful and reuseable in different parts of a program: it will always return execution to where it branched from, even as that point changes. The only difference between using a Gbranch and a tbranch is the transfer of execution after a n.

Nested Subroutines

If you attempt to call a subroutine that is nested more than seven levels deep, the calculator will halt and display Error 5 when it encounters the Ginstruction at the eighth level.

Note that there is no limitation (other than memory size) on the number of nonnested subroutines or sets of nested subroutines that you may use.