Priorität von Logikoperatoren in SCL

FrankTheTank

Level-1
Beiträge
41
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo allerseits!

Gibt es eine Priorität bei den Logikoperatoren im SCL?
Konkret würde mich interessieren, was bei folgender IF Abfrage "zuerst" geprüft wird.

Code:
IF (StateG1 = 1) OR (StateG1 = 5) AND (StateG2 = 3) THEN
    ...
END_IF;
Was macht er da zuerst? Abhängig davon kommt ja was anderes raus.

mfg,
Frank
 
Hallo allerseits!

Gibt es eine Priorität bei den Logikoperatoren im SCL?
Konkret würde mich interessieren, was bei folgender IF Abfrage "zuerst" geprüft wird.

Es wird nichts zuerst geprüft, bzw es wird der reihe nach abgearbeitet.

Die AND Bedingung steht für sich.
Entweder ist diese erfüllt oder die OR bedingung.

Also nur StateG1 = 5 reicht nicht da die AND Bedingung dann nicht erfüllt ist.

Die StateG1 = 1 Bedinung reicht aber da OR die AND Bedingung.

Grundsätzlich kommt NOT vor AND vor XOR vor OR

mfG René
 
Danke für die raschen Antworten. Wenn ich also will, dass das mittlere und linke Statement zuerst geprüft werden und das Ergebnis dann mit dem rechten Statement verundet wird, dann komm ich um Klammern nicht herum, oder?

Also sowas:

Code:
IF (StateG1 = 1 OR StateG1 = 5) AND StateG2 = 3 THEN
    ...
END_IF;
 
Wenn ich also will, dass das mittlere und linke Statement zuerst geprüft werden und das Ergebnis dann mit dem rechten Statement verundet wird, dann komm ich um Klammern nicht herum, oder?
Oder du stellst es um:
Code:
IF StateG2 = 3 AND StateG1 = 1 OR StateG1 = 5 THEN
   ...
END_IF;
Aber mit Klammern finde ich es übersichtlicher.
 
Zurück
Oben