HP-15C
LBL 0-9, .0-.9, A-E Insert label
GT0 0-9, .0-.9, A-E RUN: Set program counter to the specified label
PRGM: Insert a GTO instruction
GSB 0-9, .0-.9, A-E RUN: Execute the program starting at the given label
PRGM: Insert a GSB instruction. A maximum of
seven
subroutine
calls can be nested
Flags There are 10 flags, 0-7 are user flags. Flag 8 & 9:
8: Complex flag. Automatically set when complex mode is activated.
To deactivate complex mode explicitly clear this flag. Indicated by
"C" in the display. See section Complex Numbers
9: Overflow flag. Automatically set by an overflow condition (result
≥1E100). Causes the display to blink. If the overflow occurs
during program execution the program continues using a value of
9.99...E99 and the display blinks when the program finally stops.
Cleared by CF9 or pressing "←". Can be used to provide
program-controlled visual feedback.
SF n: Set flag n, CF n: Clear flag n
F? n: Execute next step if flag is set, skip next step if flag is clear
TEST comparisns Only two comparisn are directly available on the keyboard:
X≤Y, and X=0
Others must be entered using the TEST n command:
0: X≠0 1: X>0 2: X<0 3: X≥0 4: X≤0
5: X=Y 6: X≠Y 7: X>Y 8: X<Y 9: X≥Y
If camparisn is false: Skip the next program step
If camparisn is true : Execute the next program step
ISG 0-9, .0-.9, I Increment and skip if greater.
This loop command uses the specified register which must contain a
value in the form nnnnn.xxxyy where:
±nnnnn: Current (initial) loop counter value
xxx: Comparisn value for loop counter
yy: Loop counter increment (or decrement for DSE), if y=0
then 1 is used instead
ISG first increments n by y and then compares the new n to x:
If n>x the next program step is skipped
If n≤x the next program step is executed
Ie. if initially I=0.023 then the loop will run from 0 to 22 (or 1 to 23)
DSE 0-9, .0-.9, I Decrement and skip if equal (or smaller).
DSE first decrements n by y and then compares the new n to x:
If n≤x the next program step is skipped
If n>x the next program step is executed
GTO I Jump to the label indicated by the I register. Only the integer part of
I will be used! Values of I and associated labels:
I≥0: 0...9 → LBL 0...LBL 9, 10...14 → LBL A...LBL E
I<0: Jump to the line number indicated by the absolute value of I.
Ie. if I=–5.3 the jump will go to line number 5.
GSB I Perform subroutine call to the label indicated by the I register
PSE Halt program for about 1 second and display the X-register
5