ГОСТ Р МЭК 61131-3—2016
: О’.Т;
: 0’..’9’1 ’A’..’F;
Odal_Digit
HexJDigit
Идентификатор
: Буква ( Буква ! Цифра)*;
//Таблица 3— Комментарии
Комментарий.
ЧГ
~(’W | V )* V ? Лп’ {$channel=HIDDEN:}
| ’{*’ ( options{greedy=false;}:. )* ’*)’ {Schannel=HIDDEN;}
| V ( opt»ons{greedy=false;}:. )* ’V {$channel=HIDDEN;};
WS: ( ’’ | V | V | An’ ) {Schannel=HIDDEN:};
II
пробел
EOL: Лп’;
//Таблица4— Прагма
Прагма; ‘f ( options{greedy=false;}:. )*’}’ {$channel=HIDDEN;};
//Таблица 5— Числовые литералы
Константа
Numefic_Litera!
IntJJteral
Numeric_Literal | Char_Literal | Time_Literal | Bit_Str_Literal
1
Bool_Literal;
lnt_Literal | Real_Literal;
<lnl_Type_Name ‘If )? ( Signedjnt |BinaryJnt |Oclal_lnt |Hex_lnt);
UnsignedjntDigit ( ? Digit )*;
Signedjnt(| )?Unsignedjnt;
BinaryJnt■2tf< ? Bit)+;
OctalJnt ’
8
#’ ( ? Octal_Digit)+;
Hexjnt •16#’ ( ? Hex_Digit)+;
Real_Literal( Real_Type_Name)? SignedjntUnsignedjnt ( E’ Signedjnt)?;
Brt_Str_Literal( Multibits_Type_Name’#’)? ( Unsignedjnt | Binary lnt| OctaIJnt |Hexjnt);
Bool_Literal( Bool_Type_Name)? ( ’O’| T | ’FALSE’ | TRUE’);
//Таблица
6
— Символьно-строковые литералы
//Таблица 7— Двухсимвольные комбинации в символьных строках
Char_Literal
Char_Str
S_Byte_Char_Str
S_Byte_Char_Value
D_Byte_Char_Value
: ( ’STRING#’)?Char_Str;
: S_Byte_Char_Str | D_Byte_Char_Str;
: V S_Byte_Char_Value +V;
D_Byte_Char_Str:D_Byte_Char_Value +
: Common_Char_Value |’$\“ | V | ■$’ Hex_Digit Hex_Digit;
: CommonJ3harJ/alue |Л" | ’$»’ | ■$’ Hex Digit Hex_DigitHex_D»gitHex_Digit;
Common Char Valu
: •Т Г | •#’ | •%* | &’ | ’С..’/’ | ’0’..’9‘ || А \.Т | f-*" I
V - *
I T > ‘
| •$$’| $L‘ | SN’ | SP’ | $R’ | $T’;
//любой печатаемый символ, за исключением S. ’and’
IIТаблица
8
— Литералы длительности
//Таблица9— Литералы даты и времени суток
TimeJJteral: Duration |Time_Of_Day| Date |Date_And_Time;
Длительность
; ( Time_Type_Name |
Т
| ’LT’) ’#’ (’+’ | )?Интервал;
Fix_Point
: Unsignedjnt ( V Unsignedjnt)?;
Интервал: Сутки | Часы |Минуты | Секунды |Миллисекунды |Микросекунды
| Наносекунды;
Сутки: ( Fix_Point*сГ>| ( Unsigned_lnt’d’? )? Часы?;
215