- •2006 Оглавление:
- •1. Постановка задачи
- •Исходные данные:
- •2. Описание входного языка:
- •2.1. Описание синтаксиса входного языка
- •2.2. Описание семантики входного языка
- •Объявления и области действия
- •Оператор вывода
- •Оператор ввода
- •Зарезервированные функции
- •3. Описание этапа лексического анализа
- •3.1. Определение типов лексем
- •3.2. Определение синтаксиса лексем
- •3.3. Структуры данных
- •50 Таблица констант
- •3.5. Результаты работы лексического анализатора
- •4. Описание этапа синтаксического анализа:
- •4.1. Построение кс-грамматики входного языка
- •4.1.1. Определение программы
- •4.1.6. Подграмматика арифметических операций
- •4.2. Описание промежуточного языка (триады)
4.1.6. Подграмматика арифметических операций
Opn OpnBr
Opn OpnU
Opn OpnM
Opn OpnA
OpnBr SRLP Value SRRP
OpnU OpnULeft OpnUSign
OpnM OpnMLeft OpnMSign OpnULeft
OpnA OpnALeft OpnASign OpnMLeft
4.1.7. Подграмматика операндов арифметических операций
Value SimParam
Value Liter
Value Opn
Value StrOpn
OpnULeft SimParam
OpnULeft UnsLiter
OpnULeft StrOpn
OpnULeft OpnU
OpnULeft OpnBr
OpnMLeft OpnULeft
OpnMLeft OpnM
OpnALeft OpnMLeft
OpnALeft OpnA
4.1.8. Подграмматика знаков арифметических операций
Sign UAOP
Sign MAOP
Sign AAOP
4.1.9. Подграмматика логических выражений
LogExp LENot
LogExp LERel
LogExp LEEql
LogExp LEAnd
LogExp LEExOr
LogExp LEOr
LENot NLOP LogExp
LERel LERelLeft RLOP Value
LEEql LEEqlLeft EQLOP LERelLeft
LEAnd LEAndLeft ALOP LEAndRight
LEExOr LEExOrLeft EOLOP LEEXOrRight
LEOr LEOrLeft OLOP LEOrRight
4.1.10. Подграмматика операндов логических выражений
LERelLeft Value
LERelLeft LERel
LEEqlLeft LERelLeft
LEEqlLeft LEEql
LEAndLeft LEEqlLeft
LEAndLeft LEAnd
LEAndRight LEEql
LEAndRight LERel
LEAndRight LENot
LEExOrLeft LEAndLeft
LEExxOrLeft LEExOr
LEExOrRight LEAndRight
LEExOrRight LEAnd
LEOrLeft LEExOrLeft
LEOrLeft LEOr
LEOrRight LEExOrRight
LEOrRight LEExOr
4.1.11. Подграмматика строковых операций
StrOpn SOpnLen
StrOpn SOpnConc
StrOpn SOpnSubs
StrOpn SOpnRepl
StrOpn SOpnFind
SOpnLen KWLN SRLP StrValue SRRP
SOpnConc KWCC SRLP StrValue SRCA StrValue SRRP
SOpnSubs KWSS SRLP StrValue SRCA CI SOpnSubsTail SRRP
SOpnSubsTail SRCA CI
SOpnSubsTail ε
SOpnRepl KWRP SRLP StrValue SRCA StrValue SRCA StrValue SRRP
SOpnFind KWFN SRLP StrValue SRCA StrValue SRRP
4.1.12. Подграмматика строковых операндов
StrValue SimParam
StrValue CS
StrValue StrOpn
4.1.13. Подграмматика литералов
Liter Numb
Liter CC
Liter CS
Numb CI
Numb CD
UnsNumb UnsInt
UnsNumb UnsDbl
SimParam ID
UnsInt NotNilCipher IntTail
UnsInt 0
IntTail Cipher IntTail
IntTail ε
UnsDbl UnsInt DblTail
DblTail SRPT IntTail
DblTail ε
4.1.14. Подграмматика атомов
LangLtr _
LangLtr $
LangLtr LLtr
LLtr a
…
LLtr Z
Cipher 0
Cipher NotNilCipher
NotNilCipher 1
NotNilCipher 2
NotNilCipher 3
NotNilCipher 4
NotNilCipher 5
NotNilCipher 6
NotNilCipher 7
NotNilCipher 8
NotNilCipher 9
UnicodeLtr \ u HexDigit
HexDigit Cipher
HexDigit a
HexDigit A
…
HexDigit f
HexDigit F
4.1.15. Дополнительная подграмматика
Type BaseType
Type StructType
Type ID
BaseType KWI
BaseType KWD
BaseType KWC
StructType KWS
Label ID
SR SRLP
SR SRRP
SR SRLB
SR SRRB
SR SRLCB
SR SRRCB
SR SRSM
SR SRQN
SR SRCN
SR SRPT
SR SRCA
KW KWWL
KW KWIF
KW KWEL
KW KWGT
KW KWRD
KW KWWR
KW KWT
KW KWF
KW KWI
KW KWD
KW KWS
KW KWC
KW KWPG
KW KWIM
KW KWCL
KW KWVD
KW KWNW
KW KWNL
KW KWMN
KW KWLN
KW KWCC
KW KWSS
KW KWRP
KW KWFN