Une expression est une construction qui renvoie une valeur après son évaluation. Cette valeur est utilisée dans les instructions.
Les expressions sont constituées d'opérateurs, d'opérandes et/ou d'affectations. Un opérande peut être une constante, une variable, un appel de fonction ou une autre expression.
Exemples
|
(* Constante *) |
|
(* Variable *) |
|
(* Appel de fonction *) |
|
(* Expression *) |
|
(* Expression *) |
|
(* Affectation, voir ci-dessous *) |
L'évaluation d'une expression passe par le traitement des opérateurs en fonction de certaines règles. L'opérateur ayant le niveau d'exécution le plus élevé est traité en premier, suivi de l'opérateur de niveau suivant, et ainsi de suite jusqu'à ce que tous les opérateurs aient été traités.
Le tableau suivant répertorie les opérateurs selon leur niveau d'exécution ordinal :
Opération |
Symbole |
Niveau d'exécution |
---|---|---|
placé entre parenthèses |
(expression) |
niveau le plus élevé |
appel de fonction |
nom de fonction (liste de paramètres) |
.............. |
élévation de puissance |
EXPT |
............. |
négation |
– |
............ |
construction de compléments |
NOT |
........... |
multiplication |
* |
.......... |
division |
/ |
......... |
modulo |
MOD |
........ |
addition |
+ |
....... |
soustraction |
– |
...... |
comparaison V |
<,>,<=,>= |
..... |
égal à |
= |
.... |
non égal à |
<> |
... |
AND booléen |
AND |
.. |
XOR booléen |
XOR |
. |
OR booléen |
OR |
ordre le plus faible |
Les affactions peuvent être utilisées en tant qu'expression ; il s'agit d'une extension de la norme IEC 61131-3 (ExST).
Exemples :
|
(* |
|
(* les affectations correctes, |
|
(* un message s'affiche en raison de la non-concordance |
|
(* expression utilisée dans l'instruction de condition IF : |