Die Befehlsliste ist eine assemblerähnliche, IEC 61131-konforme Programmiersprache.
Er unterstützt die akkumulatorenbasierte Programmierung.
Eine Anweisungsliste (IL) besteht aus einer Reihe von Anweisungen. Jede Anweisung beginnt in einer neuen Zeile und enthält einen Operator und, je nach Art der Operation, einen oder mehrere durch Komma getrennte Operanden.
Einer Anweisung kann eine Bezeichnung, gefolgt von einem Doppelpunkt, vorangestellt werden. Sie dient der Identifizierung der Anweisung und kann als Sprungziel verwendet werden.
Ein Kommentar muss das letzte Element in einer Zeile sein. Zwischen den Anweisungen können Leerzeilen eingefügt werden.
Alle IEC 61131-3-Operatoren werden unterstützt, ebenso wie Mehrfacheingaben, Mehrfachausgaben, Negationen, Kommentare, Setzen/Rücksetzen von Ausgaben und bedingte/unbedingte Sprünge.
Jede Anweisung basiert in erster Linie auf dem Laden von Werten in den Akkumulator
(LD
Anweisung). Danach wird die entsprechende Operation mit dem Parameter aus dem Akkumulator
ausgeführt. Das Ergebnis der Operation wird wieder in den Akkumulator geschrieben,
von wo aus man es mit Hilfe einer ST
Anweisung gezielt speichern sollte.
Die Befehlsliste unterstützt Vergleichsoperatoren (EQ, GT, LT, GE, LE, NE) und Sprünge
zur Programmierung von bedingten Abläufen oder Schleifen. Sprünge können bedingungslos
(JMP) oder bedingt (JMPC / JMPCN) sein. Bei bedingten Sprüngen wird geprüft, ob der
Wert im Akkumulator TRUE
oder FALSE
ist.
Beispiel
