Salto condizionato, accumulatore FALSE
Se il contenuto dell'accumulatore è FALSE, l'esecuzione del programma continua in corrispondenza dell'etichetta definita nel campo dell'operando.
Qualsiasi etichetta esistente nel programma è valida. Il valore nell'accumulatore deve presentare il tipo di dato BOOL.
var_1 e var_2 possono presentare qualsiasi tipo di dato, in quanto il confronto è definito per tutti i tipi di dati. var_3, var_4 e var_5 devono presentare tipi di dati numerici in base alle operazioni eseguite con essi. LABEL1 e LABEL2 devono essere etichette valide all'interno del programma. Il salto viene eseguito solo se l'accumulatore mantiene il valore FALSE. In caso contrario, l'esecuzione del programma continua con l'istruzione che segue il comando JMPCN.
L'etichetta deve essere seguita da due punti; nell'istruzione JMPCN, tuttavia, i due punti dopo il nome dell'etichetta devono essere omessi.
Le etichette possono essere inserite solo all'inizio di una rete. Un'etichetta può essere inserita all'inizio di qualsiasi rete, anche se non si salta ad essa (p.es. LABEL0 in questo frammento di esempio di codice).
Nell'intestazione del POU sono dichiarate tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione.
(* Inizio della rete 0 *) |
|||
LABEL0: |
LD |
var_1 |
(* Caricare var_1 nell'accumulatore *) |
EQ |
var_2 |
(* Confrontare l'accumulatore con var_2; memorizzare il risultato del confronto nell'accumulatore; il risultato è di tipo BOOL *) |
|
JMPC |
LABEL1 |
(* Se l'accumulatore contiene FALSE, continuare l'esecuzione del programma nella posizione LABEL1 *) |
|
(* Inizio della rete 1 *) |
|||
LABEL1: |
MUL |
var_3 |
(* Moltiplicare l'accumulatore per var_3 *) |
SUB |
var_4 |
(* Sottrarre var_4 dall'accumulatore; il risultato viene memorizzato nell'accumulatore *) |
|
ST |
var_5 |
(* Memorizzare l'accumulatore in var_5 *) |