Условные обозначения:

• А – любой алфавитно-цифровой символ;

• А(*) – любой алфавитно-цифровой символ, кроме перечисленных в скобках;

• П – любой незначащий символ (пробел, знак табуляции, перевод строки, возврат каретки);

• Б – любая буква английского алфавита (прописная или строчная) или символ подчеркивания («_»);

• Б(*) – любая буква английского алфавита (прописная или строчная) или символ подчеркивания («_»), кроме перечисленных в скобках;

• Ц– любая цифра от 0 до 9;

• F – функция обработки таблицы лексем, вызываемая при переходе КА из одного состояния в другое, обозначения ее аргументов:

v – переменная, запомненная при работе КА;

d – константа, запомненная при работе КА;

a – текущий входной символ КА.

В остальных случаях аргументом функции F является соответствующая лексема.

Конечный автомат:

M(Q,Σ,δ,q0,F):

Q = {H, C, C1, G, S, L, V, D, P1, P2, P3, P4, E1, E2, E3, I1, I2, L2, L3, L4, B1, B2, B3, B4, B5, W1, W2, W3, W4, W5, O1, O2, D1, D2, X1, X2, X3, A1, A2, A3, N1, N2, N3, F}

Σ = А (все допустимые алфавитно-цифровые символы); q0 = H; F = {F, S}.

В таблице П2.1. указаны значения функции переходов δ.

Таблица П2.1. Функция переходов δ

При описании функции переходов через разделитель «|» указаны вызовы функции F, необходимые при выполнении того или иного перехода (если они есть).