# HP 48gII Advanced User's Reference Manual Page 504

Graphing calculator.

Using SKELSE, SKEC, SKENC, SKLSE instructions, two blocks create an IFNOT-THEN-ELSE structure.
These instructions
?A=0.A SKIP
YES
{
EXIT
UP
}
SKELSE
{
A+1.A
EXIT
UP
}
Note: SKELSE places a GOTO between the 2 blocks, SKEC places a GOC, SKENC a GONC and SKLSE places
nothing.
Notes:
s are compiled directly when encountered while
UP
have more than 64 pending EXITs and block openings simultaneously.
4.2.3
Tests
A test instruction (
?A=0.A
A
GOYES Label
,
A -> { or
{ instruction. In this case, the test is inverted and a skip block is open.
A
RTY
or
RTNYES
A
SKIPYES {
or
{
A
,
,
GOTO
GOTOL
GOVLNG
jump instruction is generated (ie:
A
or
.
EXIT
UP
4.2.4
Saturn instructions syntax
In this section:
x is a decimal number between 1 and 16. An expression can be used if its value can be determined at the first
encounter.
a is a decimal number ranging from 1 to 16 or a 0 to 15 number depending of the current mode (0-15 or 1-16). An
expression can be used, if it's value can be determined at the first encounter.
f is a field A, B, X, XS, P, WP, M, S, F1, F2, F3, F4, F5, F6 or F7.
Reg is a working register A, B, C or D.
RReg is a scratch register R0, R1, R2, R3 or R4.
Exp is an expression.
Cst is a decimal constant. An expression can be used if its value can be determined at the first encounter.
DReg is a pointer register D0 or D1.
Data is memory data pointed by D0 or D1. It means
Note: For instructions that use two working registers, instruction using the pairs A-B, B-C, C-D and A-C are smaller
and faster (if the
fields are not used).
Fn
For instructions like Reg1=Reg1... you can write only Reg1... Example:
6-18 The Development Library
Are equivalent to
?A=0.A GOYES.Beg2
*.Beg1
GOTO.End2 % and not End1
GOTO.Beg1
*.End1
GOTO.End2
*.Beg2
A+1.A
GOTO.End2
GOTO.Beg2
*.End2
) may be followed by:
Label
or
-> Label
instruction.
instruction. In this case, a skip block is open.
,
,
GOSUB
GOSUBL
?A=B.A GOTO A
Or in high-level language
IF NOT A=0 THEN
BEGIN
END
ELSE
BEGIN
END
and block openings are compiled later on. You can not
EXITs
instruction
or
. In this case, the test is inverted and a proper
GOSBVL
is compiled as
?A#B.A { GOTO A }
or
.
DAT0
DAT1
A=A+C.A
...
...
...
...
...
.
is the same as
A+C.A
.

49g+