Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ККР СПО - 12-051012испр.doc
Скачиваний:
1
Добавлен:
17.11.2019
Размер:
664.06 Кб
Скачать

Министерство образования и науки, молодежи и спорта Украины Севастопольский национальный технический университет

УТВЕРЖДЕНО

Проректор ___________________

«______» _____________ 2012 г.

ПАКЕТ ДОКУМЕНТОВ ДЛЯ ПРОВЕДЕНИЯ

КОМПЛЕКСНЫХ КОНТРОЛЬНЫХ РАБОТ

ПО НОРМАТИВНОЙ ДИСЦИПЛИНЕ

«СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ»

для студентов направления «Компьютерная инженерия»

Пакет документов для проведения ККР рассмотрен на заседании кафедры

кибернетики и вычислительной техники

28 Марта 2012 г., протокол № 7

Заведующий кафедрой _____________ А.В.Скатков

Пакет разработан доцентом Фисуном С.Н.

Рецензент: доцент Лелеков С.Г.

Одобрено

Ученым Советом факультета АВТ Протокол № 7 от 29 марта 2012 г.

Научно-методическим Советом СевНТУ Протокол №___ от "___"_______2012 г.

Севастополь – 2012

Общий набор тестовых вопросов и комплексных заданий для ккр

Тестовые вопросы

1. Программа, предназначенная для перевода исходной программы на языке высокого уровня в машинные коды или в программу на языке ассемблера с формированием объектного файла, называется:

а) транслятором; б) компилятором; в) интерпретатором; г) анализатором.

2. Какой из перечисленных этапов не относится к этапу анализа в процессе компиляции программы:

а) лексический; б) семантический; в) синтаксический; г) распределение памяти.

3. Какой этап из перечисленных этапов может отсутствовать в процессе компиляции

а) лексический анализ; б) генерация кода; в) синтаксический; г) оптимизация кода.

4. Какой из перечисленных методов синтаксического анализа относится к методу восходящего разбора:

а) рекурсивный спуск; б) LL(1); в) LL(k); г) LR(1).

5. Метод рекурсивного спуска требует преобразования исходной грамматики. Какое свойство грамматики не мешает разбору рекурсивным спуском:

а) левая рекурсия; б) правая рекурсия; в) общий префикс; г) одинаковые правые части.

6. Левая факторизация грамматики необходима, если применяется метод синтаксического разбора:

а) рекурсивный спуск; б) метод предшествования; в) LR(1); г) восходящий метод.

7. Лексемой называется:

а) символ исходного алфавита; б) набор символов, соответствующий шаблону языка; в)входная строка; г) служебное слово языка.

8. Для чего используется промежуточное представление кода:

а) для получения более компактной записи; б) для обеспечения дополнительного уровня оптимизации; в) без этого невозможно сгенерировать целевой код; г) для дополнительной проверки корректности кода.

9. В качестве промежуточного представления кода не может использоваться:

а) ПОЛИЗ; б) синтаксическое дерево; в) направленный ациклический граф; г) объектный код.

10. Метод распределения памяти зависит от:

а) срока жизни переменной; б) выбора проектировщика; в) метода синтаксического разбора; г) вида промежуточного представления.

11. При распределении памяти каждая переменная или константа получают зарезервированное место в памяти для хранения значения. Какой тип памяти при этом не применяется:

а) статическая; б) динамическая; в) глобальная; г) локальная.

12. Какая информация хранится в таблице идентификаторов при компиляции программы:

а) имя переменной; б) тип данных переменной; в) ссылка на область памяти, связанной с переменной; г) вся перечисленная информация.

13. Какая ситуация при заполнении таблицы идентификаторов называется коллизией:

а) встречаются два одинаковых имени переменных; б) нет места в таблице идентификаторов; в) невозможно найти записанную переменную; г) вычисление хэш-функции для различных переменных дает одинаковое значение.

14. Какой из перечисленных методов построения таблицы идентификаторов наиболее целесообразен с точки зрения минимизации времени поиска переменной:

а) простое добавление; б) логарифмический поиск; в) бинарное дерево; г) использование хеш-функций.

15. Перечислены стратегии восстановления после ошибок при синтаксическом анализе. Какая из этих стратегий является интересной только теоретически:

а) режим паники; б) уровень фразы; в) продукция ошибок; г) глобальная коррекция.

16. Какое из перечисленных определений подходит к термину «нетерминалы»:

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

17. Таблица триад содержит три операнда в следующей последовательности:

а) 1 операнд, 2 операнд, знак операции; б) знак операции, 2 операнд, 1 операнд; в) знак операции, 1 операнд, 2 операнд; г) 2 операнд, 1 операнд, знак операции.

18. К пакетам прикладных программ относятся:

а) операционные системы; б) системы программирования; в) утилиты; г) графические редакторы.

19. К задачам лексического анализатора относятся:

а) проверка последовательности символов входной строки на соответствие шаблону языка; б) начало заполнения таблицы идентификаторов; в) замена последовательности символов на код лексемы; г) все перечисленное.

20. Какие из перечисленных методов синтаксического анализа требуют избавления от левой рекурсии

а) рекурсивный спуск; б) метод предшествования; в) LR(1); г) метод операторного предшествования .

21. На этапе лексического анализа не удаляются:

а) пробелы; б) комментарии; в) служебные слова; г) примечания.

22. На выходе блока синтаксического анализа формируются:

а) список лексем; б) дерево разбора; в) список триад; г) ПОЛИЗ.

23. В состав СПО входят:

а) редакторы; б) табличные процессоры; в) утилиты; г) СУБД.

24. К пакетам прикладных программ не относятся:

а) текстовые процессоры; б) операционные системы; в) математические пакеты; г) графические редакторы.

25. Число строк управляющей таблицы для метода синтаксического анализа «предшествования» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний.

26. Число столбцов управляющей таблицы для метода синтаксического анализа «предшествования» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний.

27. Число строк управляющей таблицы для метода синтаксического анализа «LL(1)» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний.

28. Число столбцов управляющей таблицы для метода синтаксического анализа «LL(1)» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний

29. Число строк управляющей таблицы для метода синтаксического анализа «LR(1)» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний.

30. Число столбцов управляющей таблицы для метода синтаксического анализа «LR(1)» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний

31 Число строк управляющей таблицы для метода синтаксического анализа «операторного предшествования» равно:

а) числу терминальных символов; б) числу нетерминальных символов; в) числу терминальных символов плюс число нетерминальных символов; г) числу состояний.

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

а) ПОЛИЗ; б) триады; в) синтаксические деревья; г) списки лексем.

33. Какое из промежуточных представлений используется для синтаксического анализа:

а) ПОЛИЗ; б) триады; в) синтаксические деревья; г) списки лексем.

34. Какие данные формируются на выходе блока лексического анализа:

а) ПОЛИЗ; б) триады; в) синтаксические деревья; г) списки лексем

35. Какие данные формируются на выходе блока синтаксического анализа:

а) ПОЛИЗ; б) триады; в) синтаксические деревья; г) списки лексем

36. Какие данные формируются на выходе блока оптимизации промежуточного кода:

а) ПОЛИЗ; б) триады; в) синтаксические деревья; г) списки лексем

37. Какое представление используется на входе блока формирования и оптимизации промежуточного кода:

а) ПОЛИЗ; б) триады; в) синтаксические деревья; г) списки лексем

38. Не является объектно-ориентированным следующий язык:

а) C; б) C++; в) C#; г) Java/

39. Сотрудники фирмы Sun Micro System разработали язык:

а) C; б) C++; в) C#; г) Java

40. Visual Studio не поддерживает язык:

а) C; б) C++; в) C#; г) Java

41. Синтаксис языка - это:

а) набор допустимых предложений; б) набор допустимых слов и способов их представления; в) описание смысла предложений; г) описание правильных предложений

42. Лексика языка - это:

а) набор допустимых предложений; б) набор допустимых слов и способов их представления; в) описание смысла предложений; г) описание правильных предложений

43. Семантика языка - это:

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

44. В ПОЛИЗ операнды записываются:

а) после знака соответствующей операции; б) в порядке вычисления выражения; в) в том же порядке, что и в исходном выражении; г) перед знаком соответствующей операции

45. В ПОЛИЗ знаки операции записываются:

а) после соответствующих операндов; б) в порядке вычисления выражения; в) в том же порядке, что и в исходном выражении; г) перед соответствующими операндами.

46. Ассемблер – это транслятор, в котором:

а) процессы трансляции и исполнения программы совмещены во времени; б) процессы трансляции и исполнения программы разделены во времени; в) уровень входного языка ниже уровня объектного; г) входной язык является машинно-зависимым.

47. Интерпретатор – это транслятор, в котором:

а) процессы трансляции и исполнения программы совмещены во времени; б) процессы трансляции и исполнения программы разделены во времени; в) уровень входного языка ниже уровня объектного; г) входной язык является машинно-зависимым.

48. Компилятор – это транслятор, в котором:

а) процессы трансляции и исполнения программы совмещены во времени; б) процессы трансляции и исполнения программы разделены во времени; в) уровень входного языка ниже уровня объектного; г) входной язык является машинно-зависимым.

49. Ретранслятор – это транслятор, в котором:

а) процессы трансляции и исполнения программы совмещены во времени; б) процессы трансляции и исполнения программы разделены во времени; в) уровень входного языка ниже уровня объектного; г) входной язык является машинно-зависимым.

50. Программа, предназначенная для перевода исходной программы на языке высокого уровня в машинные коды или в программу на языке ассемблера с формированием объектного файла называется

а) транслятор; б) компилятор; в) интерпретатор; г) анализатор

51. Какой из перечисленных этапов не относится к этапу анализа в процессе компиляции программы

а) лексический; б) семантический; в) синтаксический; г) распределение памяти

52. Какой этап из перечисленных этапов может отсутствовать в процессе компиляции

а) лексический; б) генерация кода; в) синтаксический; г) оптимизация кода

53. Какой из перечисленных методов синтаксического анализа относится к методу восходящего разбора

а) рекурсивный спуск; б) LL(1); в) LL(k); г) LR(1)

54. Метод рекурсивного спуска требует преобразования исходной грамматики. Какое свойство грамматики не мешает разбору рекурсивным спуском

а) левая рекурсия; б) правая рекурсия; в) общий префикс; г) все перечисленные признаки должны быть преобразованы

55. Левая факторизация грамматики необходима, если применяется метод синтаксического разбора

а) рекурсивный спуск; б) метод предшествования; в) LR(1); г) все перечисленные методы

56. Лексемой называется

а) символ исходного алфавита; б) набор символов, соответствующий шаблону языка; в)входная строка; г) служебное слово языка

57. Для чего используется промежуточное представление кода

а) для получения более компактной записи; б) для обеспечения дополнительного уровня оптимизации; в) без этого невозможно сгенерировать целевой код; г) для дополнительной проверки корректности кода

58. В качестве промежуточного представления кода может использоваться

а) ПОЛИЗ; б) синтаксическое дерево; в) направленный ациклический граф; г) все перечисленное

59. Выражения в ПОЛИЗ не содержат:

а) имена переменных; б) знаки операции; в) скобки; г) константы

60. При распределении памяти каждая переменная или константа получают зарезервированное место в памяти для хранения значения. Какой тип памяти не применяется при этом

а) статическая; б) динамическая; в) глобальная; г) локальная

Комплексные задания

Задание 1

Построить ПОЛИЗ для заданного выражения.

Варианты для задания 1

1. .

2. .

3. .

4. .

5. .

6. .

7. .

8. .

9. .

10. .

11. .

12. .

13. .

14. .

15. .

16. .

17. .

18. .

19. .

20. .

Задание 2

  1. Разработать граф переходов и выходов, таблицу переходов и выходов, регулярную грамматику для заданного языка.

Варианты для задания 2

1. Цепочка символов "а" произвольной длины, после которой следует символ "b";

цепочка символов "а" произвольной длины, после которой следует символ "с";

цепочка символов "b" произвольной длины, после которой следуют "а" или "с".

2. Цепочка пар символов "а""b" произвольной длины, после которой следует "b";

цепочка пар символов "b""а" произвольной длины, после которой следует "с";

символ "с".

3. Произвольная цепочка символов из "а","b","с", заканчивающаяся "а","b","с";

произвольная цепочка символов из "а","b","с", заканчивающаяся "с","b","а".

4. Три подряд пришедших символа "а" в произвольной цепочке из "а" и "b", после которых следует "b";

три подряд пришедших символа "b", после которых следует "а";

три подряд пришедших символа "b", после которых следует "с".

5. Произвольное число символов "а" между двумя символами "b";

произвольное число символов "b" между двумя символами "с";

три подряд пришедших символа "с".

6. Произвольная цепочка из 0 и 1 между /* и */;

последовательность двух пар 01; символ *.

7. Произвольная цепочка из 0 и 1, после которой следует ".";

цепочка четной длины из 0 и 1 между двумя символами ".";

два символа ".".

8. Цепочка четной длины из 0 между двумя 1;

цепочка нечетной длины из 1 между двумя 0;

две 1 подряд.

9. 1 между двумя цепочками из 0,четной длины каждая;

0 между двумя цепочками из 1,четной длины каждая.

10. Две 1 , за которыми следует два 0;

цепочка чередующихся 0 и 1 нечетной длины, за которой следует ".".

11. Цепочка символов "а" произвольной длины, после которой следует символ "b";

цепочка символов "а" произвольной длины, после которой следует символ "с";

цепочка символов "b" произвольной длины, после которой следуют "а" или "с".

12. Цепочка пар символов "а""b" произвольной длины, после которой следует "b";

цепочка пар символов "b""а" произвольной длины, после которой следует "с";

символ "с".

13. Произвольная цепочка символов из "а","b","с", заканчивающаяся "а","b","с";

произвольная цепочка символов из "а","b","с", заканчивающаяся "с","b","а".

14. Три подряд пришедших символа "а" в произвольной цепочке из "а" и "b", после которых следует "b";

три подряд пришедших символа "b", после которых следует "а";

три подряд пришедших символа "b", после которых следует "с".

15. Произвольное число символов "а" между двумя символами "b";

произвольное число символов "b" между двумя символами "с";

три подряд пришедших символа "с".

16. Произвольная цепочка из 0 и 1 между /* и */;

последовательность двух пар 01; символ *.

17. Произвольная цепочка из 0 и 1, после которой следует ".";

цепочка четной длины из 0 и 1 между двумя символами ".";

два символа ".".

18. Цепочка четной длины из 0 между двумя 1;

цепочка нечетной длины из 1 между двумя 0;

две 1 подряд.

19. 1 между двумя цепочками из 0,четной длины каждая;

0 между двумя цепочками из 1,четной длины каждая.

20. Две 1 , за которыми следует два 0;

цепочка чередующихся 0 и 1 нечетной длины, за которой следует ".".