Главная / Программирование /
Разработка компиляторов / Тест 4
Разработка компиляторов - тест 4
Упражнение 1:
Номер 1
Одна из первых задач, возникающих в процессе компиляции - это:
Ответ:
 (1) определение рассматриваемого языка программирования 
 (2) определение типа необходимого семантического анализа 
 (3) определение типа необходимого лексического анализа 
 (4) определение типа рассматриваемого языка программирования 
Номер 3
Идея создания некоторого обобщенного алгоритма, проверяющего за конечное число шагов принадлежность данной цепочки языку является альтернативой:
Ответ:
 (1) механизму интерпретации 
 (2) механизму видозависимого анализа 
 (3) механизму грамматик 
 (4) механизму анализа на входе 
Упражнение 2:
Номер 1
Грамматики представляют собой:
Ответ:
 (1) наименее распространенный класс описаний языков 
 (2) наиболее распространенный класс описаний языков 
 (3) наиболее распространенный блок описаний языков 
 (4) наименее распространенный блок описаний языков 
Номер 2
Получение любого предложения языка в грамматике начинается с этого:
Ответ:
 (1) начальный символ 
 (2) теорема 
 (3) специальный символ 
 (4) аксиому 
Номер 3
В формальном определении грамматики нетерминалы обозначаются:
Ответ:
 (1) строчными буквами 
 (2) пустой строкой 
 (3) прописными буквами 
Упражнение 3:
Номер 1
Различные грамматики могут порождать:
Ответ:
 (1) один и тот же язык 
 (2) эквивалентные языки 
 (3) различные языки 
Номер 2
Несмотря на эквивалентность определяемых языков, одна грамматика может быть значительно удобнее другой с точки зрения ее использования:
Ответ:
 (1) в интерпретаторе 
 (2) в трансляторе 
 (3) в виртуальной машине 
 (4) в компиляторе 
Номер 3
Определение грамматик не накладывает никаких ограничений на количество:
Ответ:
 (1) терминалов в левой части правил 
 (2) нетерминалов в левой части правил 
 (3) пустых строк в левой части правил 
Упражнение 4:
Номер 1
Иерархия Хомского - это классификация грамматик согласно:
Ответ:
 (1) их внешнему виду 
 (2) их внутренней структуре 
 (3) их времени появления 
 (4) их принципов создания 
Номер 2
Согласно иерархии Хомского, если любое правило из P
имеет вид A->xB
или A->x
, где A
, B
- нетерминалы, а x
- терминал, то грамматика G
называется:
Ответ:
 (1) выровненной вправо 
 (2) без ограничений 
 (3) бесконтекстной 
 (4) праволинейной 
Номер 3
Согласно иерархии Хомского, если любое правило из P
имеет вид A->a
, где A
- нетерминал, a
- нетерминал или терминал то грамматика G
называется:
Ответ:
 (1) бесконтекстной 
 (2) неукорачивающей 
 (3) контекстно-зависимой 
 (4) праволинейной 
 (5) контекстно-свободной 
 (6) выровненной вправо 
Упражнение 5:
Номер 1
Обобщенный алгоритм, позволяющий определить некоторое множество и использующий в своей работе следующие компоненты: входную ленту, управляющее устройство с конечной памятью и дополнительную рабочую память - это:
Ответ:
 (1) интерпретатор 
 (2) распознаватель 
 (3) определитель 
Номер 2
В качестве примеров распознавателей можно назвать:
Ответ:
 (1) машину Тьюринга 
 (2) конечные автоматы 
 (3) бесконечные автоматы 
 (4) магазинные автоматы 
Номер 3
Путем задания некоторого множества допустимых заключительных состояний распознавателя определяется:
Ответ:
 (1) грамматика 
 (2) язык 
 (3) лексема 
 (4) виртуальная машина 
Упражнение 6:
Номер 1
Основная часть конечного автомата - это:
Ответ:
 (1) функция перехода 
 (2) функция распознавания 
 (3) функция определения 
 (4) функция остановки 
Номер 2
В конечных автоматах цепочка считается принадлежащей языку, если хотя бы одна из последовательностей шагов:
Ответ:
 (1) завершается в начальном состоянии 
 (2) завершается в состоянии перехода 
 (3) завершается в состоянии распознавания 
 (4) завершается в заключительном состоянии 
Номер 3
Язык распознается конечным автоматом, если:
Ответ:
 (1) им распознается каждое слово языка 
 (2) им распознается хотя бы одно слово языка 
 (3) им не распознается ни одно слово языка 
 (4) им распознается ключевое слово языка 
Упражнение 7:
Номер 1
Удобная форма записи конечных автоматов – это:
Ответ:
 (1) графы переходов 
 (2) диаграммы переходов 
 (3) дерево переходов 
 (4) графики переходов 
Номер 2
Следующий набросок программы:q = q0;
c = GetChar();
while (c != eof) {
q = move (q, c);
c = GetChar();
}
if (q is in F) return "yes";
else return "no";
демонстрирует (предполагается, что входная лента заканчивается символом end_of_file
):
Ответ:
 (1) моделирование конечного автомата 
 (2) моделирование бесконечного автомата 
 (3) моделирование магазинного автомата 
 (4) моделирование машины Тьюринга 
Номер 3
Два детерминированных автомата называются эквивалентными, если они:
Ответ:
 (1) распознают один и тот же язык 
 (2) распознают один язык 
 (3) распознают определенное множество языков 
 (4) распознают специальные языки 
Упражнение 8:
Номер 1
Если мы предположим, что начальные состояния конечных автоматов эквивалентны, то мы можем получить:
Ответ:
 (1) и другие пары начальных состояний 
 (2) и другие пары эквивалентных состояний 
 (3) и другие пары конечных состояний 
 (4) и другие пары промежуточных состояний 
Номер 2
Следующий алгоритм: удаление всех недостижимые состояния, разбивка множества всех достижимых состояний на классы эквивалентности неразличимых состояний, из каждого класса эквивалентности берется только по одному представителю - это:
Ответ:
 (1) алгоритм минимизации 
 (2) алгоритм отладки 
 (3) алгоритм выделения представителей 
 (4) алгоритм достижимых и недостижимих состояний 
Номер 3
Классы языков, определяемых праволинейной грамматикой являются:
Ответ:
 (1) эквивалентными 
 (2) не эквивалентными 
 (3) формализмами 
Упражнение 9:
Номер 1
Класс языков, задаваемых праволинейными грамматиками, очень удобен в задачах:
Ответ:
 (1) трансляции 
 (2) интерпретации 
 (3) компиляции 
Номер 2
Если существует, по крайней мере, одна выводимая в грамматике цепочка, для которой существует более одного вывода, то такая грамматика является:
Ответ:
 (1) однозначной 
 (2) естественной 
 (3) произвольной 
 (4) неоднозначной 
Номер 3
Любая КС-грамматика может быть приведена к нормальному виду Хомского, в котором все правила имеют один из следующих видов:
Ответ:
 (1) A->BC
, где А
, B
и C
- нетерминалы 
 (2) A->a
, где a
- терминал  
 (3) AB->a
, где a
- терминал  
 (4) BC->A
, где А
, B
и C
- нетерминалы 
Упражнение 10:
Номер 1
В нормальной форме Грейбах все правые части правил начинаются:
Ответ:
 (1) с терминалов 
 (2) с нетерминалов 
 (3) с формул 
 (4) с инструкций 
Номер 2
Магазинные автоматы, известны также как:
Ответ:
 (1) автоматы с магазинной памятью 
 (2) МА-автоматы 
 (3) МП-автоматы 
Номер 3
На каждом шаге работы МП-автомат может либо:
Ответ:
 (1) занести что-то в магазин 
 (2) снять какие-то значения с его вершины 
 (3) удалить вершину 
 (4) удалить магазин 
Упражнение 11:
Номер 1
МП-автоматы обладают одним существенным недостатком:
Ответ:
 (1) они недетерминированны по своей природе 
 (2) они детерминированны по своей природе 
 (3) они имеют сложную структуру 
 (4) они имеют простую структуру 
Номер 2
Детерминированные МП-автоматы описывают только подмножество всего класса КС-языков - это подмножество называется:
Ответ:
 (1) детерминированными КС-языками 
 (2) недетерминированными КС-языками 
 (3) детерминированными языками 
 (4) недетерминированными языками 
Номер 3
Форма Бэкуса-Наура был разработана для описания:
Ответ:
 (1) Фортрана 
 (2) Паскаля 
 (3) Алгола-60 
 (4) Кобола 
Упражнение 12:
Номер 1
При определении синтаксиса языков Pascal и Modula-2 Вирт использовал расширенную форму Бэкуса-Наура (EBNF):
Ответ:
 (1) нетерминалы записываются как отдельные слова 
 (2) символ равенства используется вместо символа ::= 
 (3) символ точка используется для обозначения конца правила 
 (4) комментарии заключаются между символами (* … *) 
Номер 2
Следующее правило:REF to MODE NEST assignation:
REF to MODE NEST destination, becomes token,
MODE NEST source.
определяет:
Ответ:
 (1) массив 
 (2) цикл с постусловием 
 (3) цикл с предусловием 
 (4) присваивание 
Номер 3
Синтаксические диаграммы или синтаксические схемы имеют форму:
Ответ:
 (1) блок-схем 
 (2) блоков 
 (3) прямоугольников 
 (4) квадратов