Слайд 6Лексический анализатор
Лексический анализатор – это часть компилятора, которая читает
литеры программы на исходном языке и строит из них слова
(лексемы) исходного языка.
Лексема (лексическая единица языка) – это структурная единица языка, которая состоит из элементарных символов языка и не содержит в своем составе других структурных единиц языка.
Результатом работы лексического анализатора является перечень всех найденных в тексте исходной программы лексем. Этот перечень представляется в виде таблицы, называемой таблицей лексем
Слайд 10 Входной язык задан с помощью следующей КС-грамматики:
G ({ prog,
end., if, then, else, endif, begin, end, , white, do,
and, or, not, =, <, >, (, ),{, }, -, +, *, /, a,;, :=}, {S, L, O, B, C, K, D, H, E, T},P, S)
P:
S → prog L end.
L → O | L ; O | L ;
O → if B then O else O endif | if B then O endif | begin L end
| while (B) do O| a:=E
B → B or C | C
C → C and D | D
D →not D | H
H → E < E | E > E | E = E | (B)
E → E – T | E + T | E * T | E / T| T
T → (E) | a