GOTO                Jump to a TML address

Syntax                        

GOTO Label

Unconditional GOTO to Label

GOTO Value16

Unconditional GOTO to Value16

GOTO VAR16

Unconditional GOTO to address stored in VAR16Addr

GOTO Label, VAR, Flag

GOTO Label if VAR Flag 0

GOTO Value16, VAR, Flag

GOTO Value16 if VAR Flag 0

GOTO VAR16, VAR, Flag

GOTO address set in Var16Addr if VAR16 Flag 0

 

OperandsLabel: a label providing the 16-bit value of a jump address

       Value16: immediate 16-bit jump address

VAR16: integer variable containing the jump address

VAR: 16 or 32-bit TML test variable compared with 0

Flag: one of the conditions: EQ, NEQ, LT, LEQ, GT, GEQ

PlaceTMLOnline

Binary code

GOTO

DescriptionExecutes a jump to the TML program position specified via the jump address. The jump address is provided via a label, an immediate value or by the value of a 16-bit TML variable. The jump can be unconditional or unconditional. In a conditional jump, a condition is tested. If the condition is true the jump is executed, else the next TML command is carried out. The condition is specified by a 16-bit or 32-bit test variable and a test condition added after the label with the jump address. The test variable is always compared with zero. The possible test conditions are:

EQ        if VAR = 0

NEQ        if VAR ≠ 0

LT        if VAR < 0

LEQ        if VAR ≤ 0

GT        if VAR > 0

GEQ        if VAR ≥ 0

 

Example

GOTO label1, var1, LT;        // jump to label1 if var1 < 0

GOTO label2, var1, LEQ;        // jump to label2 if var1 <= 0

GOTO label3, var1, GT;        // jump to label3 if var1 > 0

GOTO label4;                        // unconditional jump to label4

GOTO var_address;                // unconditional jump to jumps address

// provided by var_address value