ВУЗ:
Составители:
12
11 8
20
22 4
14
22 2
21
12 4
11
1.2. СИНТАКСИЧЕСКИЙ АНАЛИЗ
Синтаксический анализ – второй этап компиляции. Во время этого этапа предложения программы
распознаются как языковые конструкции используемой грамматики. Для того чтобы выяснить, принад-
лежит ли предложение языку, необходимо построить алгоритм, который для любого предложения, до-
пустимого грамматикой, давал бы последовательность выводов этой цепочки к начальному символу
грамматики. Мы можем рассматривать этот процесс как построение дерева грамматического разбора
для транслируемых предложений. Различают две категории алгоритмов разбора: нисходящий (сверху
вниз) и восходящий (снизу вверх). Эти термины соответствуют способу построения синтаксических де-
ревьев. Рассмотрим для примера предложение 35 в грамматике целых чисел:
N → В/NВ; В → 0/1/2/3/4/5/6/7/8/9.
При нисходящем разборе дерево строится от корня (начального символа) вниз к концевым узлам
(рис. 2).
B
B
N
N
→
NB
→
N5
→
B5
→
35
N
5
3
Рис. 2
Восходящий разбор состоит в том, что, отправляясь от заданной цепочки, пытаются привести ее к
начальному символу (рис. 3).
B
B
N
35
→
B5
→
N5
→
NB
→
N
N
53
Рис. 3
Разработано множество методов синтаксического анализа. В лабораторных работах рассматривают-
ся два метода: нисходящий и восходящий.
Страницы
- « первая
- ‹ предыдущая
- …
- 6
- 7
- 8
- 9
- 10
- …
- следующая ›
- последняя »