Saut conditionnel (Jump Conditional)
Lorsque le contenu de l’accumulateur est TRUE, l’exécution du programme continue à l’étiquette définie dans la zone d’opérande.
Valid operands for this operator must be of one of the following data types: Toutes les étiquettes du programme sont valides. Dans l’accumulateur, la valeur doit être du type de données BOOL.
var_1 et var_2 peuvent être de n’importe quel type de données car la comparaison est définie pour tout type de données. var_3, var_4 et var_5 doivent être de type numérique en fonctions des opérations exécutées. LABEL1 et LABEL2 doivent être des étiquettes valides dans le programme. Le saut est exécuté uniquement lorsque l’accumulateur est TRUE. Sinon, l’exécution du programme continue avec l’instruction suivant l’instruction JMPC.
L’étiquette doit être suivie de deux points. Dans l’instruction JMPC, cependant, le nom de l’instruction ne doit pas être suivi des deux points.
Les étiquettes peuvent être insérées uniquement au début d’un réseau. Une étiquette peut être insérée au début de n’importe quel réseau, même sans saut (par ex. LABEL0 dans ce fragment de code).
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU.
(* Beginning of network 0 *) |
|||
LABEL0: |
LD |
var_1 |
(* Load var_1 in accu *) |
EQ |
var_2 |
(* Compare accu with var_2; store result of comparison in accu; result is of type BOOL*) |
|
JMPC |
LABEL1 |
(* If accu contains TRUE continue program execution at position LABEL1 *) |
|
(* Beginning of network 1 *) |
|||
LABEL1: |
MUL |
var_3 |
(* Multiply accu by var_3 *) |
SUB |
var_4 |
(* Subtract var_4 from accu; result is store in accu *) |
|
ST |
var_5 |
(* Store accu in var_5*) |