ККР. Теория языков программирования и методы трансляции

Контрольная работа
в среде программирования ККР



Если Вы считаете, что данная страница каким-либо образом нарушает Ваши авторские права, то Вам следует обратиться в администрацию нашего сайта по адресу info@kursovik.com либо через форму обратной связи

Среда программирования: ККР

Название работы: ККР. Теория языков программирования и методы трансляции

Вид работы: Контрольная работа

Описание: Компьютерная контрольная по предмету "Теория языков программирования и методы трансляции".

Введение в компиляцию

Question 1
Пронумеровав от 1 до 6, расставьте по порядку этапы компиляции.
– синтаксический анализ или разбор
– лексический анализ
– оптимизация кода
– генерация объектного кода
– генерация кода или трансляция в промежуточный код
– работа с таблицами

Введение в компиляцию

Question 2
Сопоставьте команду и ее действие.
Команда Действие
1. LOAD =M a) m → сумматор
2. LOAD M b) C(сумматор) → m
3. ADD M c) C(сумматор) * C(m) → сумматор
4. MPY =M d) C(m) → сумматор
5. STORE M e) C(сумматор) + C(m) → сумматор
6. ADD =M f) C(сумматор) + m → сумматор
7. MPY M g) C(сумматор) * m → сумматор
В ответ введите через точку с запятой пары номер-буква в порядке возрастания номеров команд.
Пример ввода ответа: 1a;2b;3c;4d;5e;6f;7g
Введите слово, словосочетание или символьно-цифровое выражение.

Синтаксический анализ снизу вверх

Question 3
Является ли грамматика, описанная данными правилами, LR(1)-грамматикой?
Если нет, введите в ответ номер первого правила, которое не может являться правилом LR(1)-грамматики. Если да, введите в ответ 0.
1. START → T1
2. T1 → T2 T3
3. T1 → T3 c
4. T2 → c START START
5. T2 → e
6. T3 → a b
7. T3 → c d
Введите слово, словосочетание или символьно-цифровое выражение.

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

Question 4
Двухадресный промежуточный код называется:
Введите слово, словосочетание или символьно-цифровое выражение.

Исправление и диагностика ошибок

Question 5
К контекстно-зависимым синтаксическим ошибкам программы относят:
• использование неописанного идентификатора
• ошибки в записи числовых или строковых констант
• непарные операторные скобки
• повторное описание идентификатора
• неправильное число параметров для вызова процедуры или функции
• невозможность определения знака операции по его операндам
• нахождение индекса массива вне его границ
• попытки чтения за пределами файла
Выберите все верные ответы (может быть несколько или один).

КС-грамматики и синтаксический анализ сверху вниз

Question 6
Является ли грамматика, описанная данными правилами, LL(1)-грамматикой?
Если нет, введите в ответ через точку с запятой номера правил (в порядке возрастания), которые не могут являться правилами LL(1)-грамматики. Если да, введите в ответ 0.
1. START → T1
2. START → e
3. T1 → a
4. T1 → T2 T3
5. T2 → c START
6. T2 → e
7. T3 → z START
8. T3 → e
Введите слово, словосочетание или символьно-цифровое выражение.

Исправление и диагностика ошибок

Question 7
К контекстно-независимым синтаксическим ошибкам программы относят:
• использование неописанного идентификатора
• ошибки в записи числовых или строковых констант
• непарные операторные скобки
• попытки чтения за пределами файла
• использование в программе неверного порядка лексем
• нахождение индекса массива вне его границ
• неправильное число параметров для вызова процедуры или функции
• использование в программе маловероятной последовательности символов
Выберите все верные ответы (может быть несколько или один).

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

Question 8
Объединение при выполнении приведения типов – это, например, переход:
• от struct(real) к real
• от procedure real к real
• от pointer char к char
• от int к char
• от int к struct(int, char)
• от real к real [ ]
• от int к void
Выберите все верные ответы (может быть несколько или один).

Проектирование компиляторов

Question 9
Наиболее подходящим способом, на котором будет базироваться распределение памяти, является:
• динамическая куча
• стек
• управляемая динамическая куча
• виртуальная память
Выберите все верные ответы (может быть несколько или один).

Предварительные математические сведения

Question 10
Сопоставьте две части условия, чтобы нижеследующее утверждение было истинным.
Циклом в графе G = (A, R) называется путь (а0, а1, …, аn), в котором:
1. аi = a) A
2. а0 = b) аi+1
3. (аi, аi+1)∈ c) R
4. аi∈ d) аn
В ответ введите пару номер-буква.
Пример ввода ответа: 1c
Сообщить о технической ошибке
Введите слово, словосочетание или символьно-цифровое выражение.
Сообщить о технической ошибке
Введите слово, словосочетание или символьно-цифровое выражение.
Включение действий в синтаксис
Question 11
Укажите основные свойства языков программирования, которые учитываются при построении таблицы имен.
• В одном и том же блоке идентификатор не может описываться более одного раза.
• При любой определяющей реализации переменная должна быть инициализирована.
• Определяющая реализация идентификатора появляется раньше любой прикладной реализации.
• При любой прикладной реализации переменная должна быть инициализирована.
• При наличии прикладной реализации идентификатора соответствующая определяющая реализация находится в наименьшем включающем блоке, в котором содержится описание этого идентификатора.
• Прикладная реализация идентификатора появляется раньше любой определяющей реализации.
Выберите все верные ответы (может быть несколько или один).

Теория языков

Question 12
Начальной конфигурацией конечного автомата M = (Q, Σ, δ, q0, F) является:
• (q0, e)
• q0
• (q0, w)
• (q, e), где q∈F
• q∈F
• (q, w), где q∈F
• Q×Σ*
Выберите все верные ответы (может быть несколько или один).

Теория языков

Question 13
Состояние q конечного автомата M называется недостижимым, если не существует такой входной цепочки x, что:
• (q0, x) ⊢*(q, x)
• (q, x) ⊢*(q, e)
• (q0, x) ⊢*(q, e)
• (q0, x) ⊢*(q, e), где q∈F
• (q0, x) ⊢*(q, x), где q∈F
Выберите все верные ответы (может быть несколько или один).

Синтаксический анализ снизу вверх

Question 14
Левая рекурсия в грамматике G = (N, Σ, P, S) – это правило вида A→β, где:
• β=A
• β=S
• β=NN
• β=AN
• β=SN
• β=NA
• β=NS
• β=N(N∪Σ)*
• β=A(N∪Σ)*
• β=S(N∪Σ)*
Выберите все верные ответы (может быть несколько или один).

Введение в компиляцию

Question 15
Лексический анализатор, если для данного текста, положения указателя в этом тексте и типа лексемы он определяет, образуют ли знаки, расположенные непосредственно справа от указателя, лексему этого типа и сдвигает указатель вправо от части текста, образующей эту лексему, работает:
• косвенно
• прямо
• не прямо
• реверсивно
Выберите все верные ответы (может быть несколько или один).

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

Question 16
Трехадресный промежуточный код называется:
Введите слово, словосочетание или символьно-цифровое выражение.

КС-грамматики и синтаксический анализ сверху вниз

Question 17
Является ли грамматика, описанная данными правилами, LL(1)-грамматикой?
Если нет, введите в ответ через точку с запятой номера правил (в порядке возрастания), которые не могут являться правилами LL(1)-грамматики. Если да, введите в ответ 0.
1. START → x T1
2. START → y T2
3. T1 → T2 a
4. T1 → T3 a
5. T2 → b START
6. T2 → e
7. T3 → c START
8. T3 → e
Введите слово, словосочетание или символьно-цифровое выражение.

Включение действий в синтаксис

Question 18
Укажите основные свойства языков C/C++, которые учитываются при построении таблицы имен.
• В одном и том же блоке идентификатор не может описываться более одного раза.
• При любой определяющей реализации переменная должна быть инициализирована.
• Определяющая реализация идентификатора появляется раньше любой прикладной реализации.
• При любой прикладной реализации переменная должна быть инициализирована.
• При наличии прикладной реализации идентификатора соответствующая определяющая реализация находится в наименьшем включающем блоке, в котором содержится описание этого идентификатора.
• Прикладная реализация идентификатора появляется раньше любой определяющей реализации.
• Все описания в блоке помещаются раньше всех операторов и предложений.
Выберите все верные ответы (может быть несколько или один).

Включение действий в синтаксис

Question 19
Описание int i является
реализацией переменной i.

Теория языков

Question 20
Регулярное выражение α + ∅ равно:
• α
• ∅
• α∅
• ∅α
• e
• ∅ + α
Выберите все верные ответы (может быть несколько или один).

Синтаксический анализ снизу вверх

Question 21
В LR(k)-грамматике G = (N, Σ, P, S) каждое правило имеет вид (α→β)∈P, где:
• β∈(N∪Σ)*N(N∪Σ)+
• β∈Σ*
• β∈ΣN*
• β∈Σ+
• β∈Σ+N∪Σ*
• β=e
• β=e при α=S
• β=∅
Выберите все верные ответы (может быть несколько или один).

Проектирование компиляторов

Question 22
Если передача параметра в процедуру или функцию заключается в том, что за адрес формального параметра принимается адрес фактического параметра, то это вызов:
• по ссылке или указателю
• по значению
• по имени
• по результату
• по значению и результату
Выберите все верные ответы (может быть несколько или один).

Предварительные математические сведения

Question 23
Составьте из данных фраз определение: графы G1 = (A1, R1) и G2 = (A2, R2) являются равными (изоморфными), если:
1. существует биективное отображение f :G1→G2 такое, что
2. aR1b тогда и только тогда, когда f(a)R2f(b)
3. существует биективное отображение f :A1→A2 такое, что
4. aG1b тогда и только тогда, когда f(a)G2f(b)
5. aR1b тогда и только тогда, когда f(aR2b)
В ответ введите номера частей предложения в правильном порядке следования.
Пример ввода ответа: 15
Введите слово, словосочетание или символьно-цифровое выражение.

КС-грамматики и синтаксический анализ сверху вниз

Question 24
В LL(k)-грамматике G = (N, Σ, P, S) каждое правило имеет вид (α→β)∈P где β – это:
• произвольная цепочка
• терминал
• цепочка терминалов
• нетерминал
• цепочка нетерминалов
• пустое множество
Выберите все верные ответы (может быть несколько или один).

Проектирование компиляторов

Question 25
Распределение памяти заключается:
• в организации динамической кучи
• в отображении элементов таблицы имен на адресное пространство машины
• в организации управляемой динамической кучи
• в планировании работы сборщика мусора
• в организации системы виртуальной памяти
Выберите все верные ответы (может быть несколько или один).

Исправление и диагностика ошибок

Question 26
К лексическим ошибкам программы относят:
• использование недопустимого символа
• использование неописанного типа данных
• использование недопустимого приведения типов
• несоответствие последовательности символов ни одному из слов языка
• ошибки при записи строковых констант
• ошибки при арифметических вычислениях
• неправильное число параметров для вызова процедуры или функции
• неправильное число индексов массива
Выберите все верные ответы (может быть несколько или один).

Предварительные математические сведения

Question 27
Язык в алфавите Σ – это:
• все слова русского и английского языков
• множество цепочек {e, 0, 1, 00, 01, 10, 11, 000, …,}
• множество всех цепочек в Σ
• все слова из словаря Даля
Выберите все верные ответы (может быть несколько или один).

Год: 2023

Данный заказ (контрольная работа) выполнялся нашим сайтом в 2023-м году, в рамках этого заказа была разработана программа в среде программирования ККР. Если у Вас похожее задание на программу, которую нужно написать на ККР, либо на другом языке программирования, пожалуйста заполните форму, приведённую ниже, после чего Ваше задание в первую очередь рассмотрит наш программист, выполнявший в 2023-м году этот заказ, если он откажется, то Ваше задание оценят другие наши программисты в течение 48-и часов, если оценка нужна срочно, просим Вас оставить пометку об этом - напишите в тексте задания фразу "СРОЧНЫЙ ЗАКАЗ".

Купить эту работу

Viber: +79374242235
Telegram: kursovikcom
ВКонтакте: kursovikcom
WhatsApp +79374242235
E-mail: info@kursovik.com
Skype: kursovik.com