Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
FBFO_LO.doc
Скачиваний:
15
Добавлен:
02.09.2019
Размер:
430.08 Кб
Скачать

Контрольные вопросы

  1. Языки, используемые в ЛО САПР и требования к ним.

  2. Проблема трансляции и её особенности.

  3. Языки программирования в ЛО САПР.

  4. Языки проектирования в ЛО САПР.

  5. Типы входных языков в ЛО САПР.

  6. Диалоговые языки в ЛО САПР.

  7. Языки управления в ЛО САПР.

  8. Метод синтаксически ориентированной трансляции.

  9. Основные понятия языка.

  10. Структура компилятора.

  11. Синтаксис и семантика формальных языков.

  12. Формы Бэкуса-Наура.

  13. Синтаксическое дерево.

  14. Рекурсия.

  15. Классификация языков по Н. Хомскому.

  16. Лексический анализ.

  17. Диаграмма состояний.

  18. Матрица переходов состояний.

  19. Грамматический разбор сверху вниз.

  20. Проблемы грамматического разбора сверху вниз.

  21. Грамматики с операторным предшествованием.

  22. Разбор арифметического выражения.

  23. Разбор символьной цепочки.

  24. Матричное представление синтаксического дерева.

  25. Машинно-независимая оптимизация.

  26. Алгоритм машинно-независимой оптимизации.

  27. Машинно-независимая оптимизация фрагмента программы.

  28. Генерация кода.

  29. Машинно-зависимая оптимизация.

  30. Машинно-зависимая оптимизация арифметического выражения.

  31. Распределение памяти.

  32. Фаза сборки.

  33. Потоки информации компилятора.

  34. Таблицы данных компилятора.

  35. Форматы записей таблиц и проходы компилятора.

  36. Просмотры компилятора.

Требования к контрольным работам

Каждый студент пишет одну контрольную работу по курсу “Лингвистическое обеспечение САПР”. Выбор варианта контрольной работы производится либо по последней цифре номера зачетной книжки, либо по сумме двух последних цифр.

Исходными данными для выполнения контрольной работы являются: формула языка, алфавит терминальных символов и обязательный минимумом нетерминальных конструкций языка. Необходимо разработать грамматику данного языка, алгоритм распознавания символьных цепочек на основе данной грамматики и программу распознавания символьных цепочек.

При разработке грамматики студент должен использовать дополнительные нетерминальные символы на основе обязательного минимума нетерминальных конструкций языка.

Алгоритм и программа распознавания символьных цепочек должны предусматривать ввод с клавиатуры символьной цепочки и вывод результата распознавания: “Данная цепочка корректна” или “Данная цепочка некорректна”, возможность сохранения результата распознавания в текстовом файле, а также возможность последовательного анализа нескольких символьных цепочек с помощью запроса на продолжение сеанса работы.

Алгоритм распознавания должен быть описан либо в словесной форме, либо в виде схемы алгоритма. Программа может быть разработана на любом знакомом студенту языке программирования высокого уровня.

Контрольная работа должна содержать постановку задачи, исходные данные, описание грамматики языка в виде нотаций Бэкуса-Науэра, описание алгоритма распознавания, исходный текст программы распознавания символьных цепочек и распечатку текстового файла с результатами анализа, выводы по работе.

Варианты контрольных работ

варианта

Формула языка

Алфавит терминальных символов

Обязательные нетерминальные конструкции языка

0

AB  BC  BCD  ACB

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

1

A2  BC  BDC  CAB

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

2

A2  B2  AC2  D2B

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

3

AD  C2  DBC  CB2

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

4

CD  B2  ABC  C2A

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

5

DA  D2  CAD  BA2

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

6

BC  A2  BCD  ABD

{ah, bc, cd, da, de, ed, ef, fg}

A = {ah, cd}; B = {bc, de};

C = {ed, ef}; D = {da, fg}

7

A2  BC  BDC  CAB

{ae, af, ba, cb, ce, da, dc, he}

A = {ba, cb}; B = {dc, ae};

C = {he, da}; D = {ce, af}

8

A2  B2  AC2  D2B

{ae, af, ba, cb, ce, da, dc, he}

A = {ba, cb}; B = {dc, ae};

C = {he, da}; D = {ce, af}

9

AD  C2  DBC  CB2

{ae, af, ba, cb, ce, da, dc, he}

A = {ba, cb}; B = {dc, ae};

C = {he, da}; D = {ce, af}

10

CD  B2  ABC  C2A

{ae, af, ba, cb, ce, da, dc, he}

A = {ba, cb}; B = {dc, ae};

C = {he, da}; D = {ce, af}

11

DA  D2  CAD  BA2

{ae, af, ba, cb, ce, da, dc, he}

A = {ba, cb}; B = {dc, ae};

C = {he, da}; D = {ce, af}

12

BC  A2  BCD  ABD

{ae, af, ba, cb, ce, da, dc, he}

A = {ba, cb}; B = {dc, ae};

C = {he, da}; D = {ce, af}

13

A2  BC  BDC  CAB

{ab, ac, ad, cf, dh, eh, fe, ge}

A = {ac, ad}; B = {ab, eh};

C = {fe, ge}; D = {cf, dh}

варианта

Формула языка

Алфавит терминальных символов

Обязательные нетерминальные конструкции языка

14

A2  B2  AC2  D2B

{ab, ac, ad, cf, dh, eh, fe, ge}

A = {ac, ad}; B = {ab, eh};

C = {fe, ge}; D = {cf, dh}

15

AD  C2  DBC  CB2

{ab, ac, ad, cf, dh, eh, fe, ge}

A = {ac, ad}; B = {ab, eh};

C = {fe, ge}; D = {cf, dh}

16

CD  B2  ABC  C2A

{ab, ac, ad, cf, dh, eh, fe, ge}

A = {ac, ad}; B = {ab, eh};

C = {fe, ge}; D = {cf, dh}

17

DA  D2  CAD  BA2

{ab, ac, ad, cf, dh, eh, fe, ge}

A = {ac, ad}; B = {ab, eh};

C = {fe, ge}; D = {cf, dh}

18

BC  A2  BCD  ABD

{ab, ac, ad, cf, dh, eh, fe, ge}

A = {ac, ad}; B = {ab, eh};

C = {fe, ge}; D = {cf, dh}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]