Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Операторного предшествования ⇐ ПредыдущаяСтр 5 из 5
КС-грамматика G(VN,VT,P,S), V=VT VN, для которой выполняются следующие условия: o для каждой упорядоченной пары терминальных и нетерминальных символов выполняется не более чем одно из трёх отношений предшествования; o различные правила в грамматике имеют разные правые части; называется грамматикой … Простого предшествования
Всякая грамматика простого предшествования является … Однозначной
Верно ли утверждение: Всякая грамматика простого предшествования является однозначной? Да
Верно ли утверждение: Всякая грамматика операторного предшествования является однозначной? Нет
Верно ли утверждение: Всякая грамматика операторного предшествования задаёт детерминированный КС-язык? Да
Детерминированный КС-язык задаёт грамматика … предшествования: Операторного
Отношения операторного предшествования проверяются в процессе разбора только между … символами: Терминальными
Размер матрицы для грамматики операторного предшествования всегда будет …, чем размер матрицы эквивалентной ей грамматики простого предшествования: Меньше
Верно ли утверждение: Размер матрицы для грамматики операторного предшествования всегда будет больше, чем размер матрицы эквивалентной ей грамматики простого предшествования: Нет
а “забирает приоритет у” b:
Оператор * имеет более высокий приоритет, чем оператор +. При получении выражения вида E+E*E+E основой является: E*E
и – операторы левоассоциативны и имеют равный приоритет
и – операторы правоассоциативны и имеют равный приоритет
и – операторы левоассоциативны и имеют равный приоритет ;
и – операторы правоассоциативны и имеют равный приоритет
в выражении основой является
На рисунке представлена модель … -анализатора:
LR-анализатора
В LR-анализаторе функция =“допуск” синтаксический анализатор: Завершается.
Верно ли утверждение: LR-анализатор может обнаруживать синтаксические ошибки сразу же, как только это становится возможным при сканировании входного потока Да
Грамматика, для которой мы можем построить таблицу синтаксического анализа, называется … - грамматикой. LR
Верно ли утверждение: Любая грамматика, содержащая λ - правила, не может быть LR(0) – грамматикой: Да
Количество шагов алгоритма функционирования распознавателя LR(k)-грамматики при росте длины входной цепочки символов растёт …: Линейно
Распознаватель для LR(k)-грамматики является … Линейным
Верно ли утверждение: Класс языков, заданных LR(1)-грамматиками, полностью совпадает с классом детерминированных КС-языков. Да
Управляющая таблица для LR(0)-грамматики строится на основании понятия: “левых контекстов”
Грамматика, для разбора которой LR-анализатору требуется просмотр до k символов входного потока на каждом шаге, называется: LR(k)-грамматикой
Верно ли утверждение: LR-грамматики могут описывать больше языков, чем LL-грамматики: Да
Соответствие методов построения таблицы LR-анализа для грамматики и мощностей для них: а) LALR 1) наиболее мощный б) SLR 2) занимает промежуточное положение в) канонический LR 3) наименее мощный а) –2); б) –3); в) –1)
Работа распознавателя для LR(k)-грамматик основана на использовании алгоритма …: Сдвиг-свёртка
Верно ли утверждение: Всякий детерминированный КС-язык может быть задан SLR(1)-грамматикой: Нет
Верно ли утверждение: Любой детерминированный КС-язык может быть задан LALR(1)-грамматикой: Да
LR(0) – пункт грамматики G – продукция G с точкой в некоторой позиции правой части. Продукция даёт четыре пункта: 1. 2. 3. 4. Какой из пунктов определяет, что во входном потоке есть входная строка, порождённая X, ожидаем получить из входного потока строку, порождаемую YZ. 2
LR(0) – пункт грамматики G – продукция G с точкой в некоторой позиции правой части. Продукция даёт четыре пункта: 1. 2. 3. 4. Какой из пунктов определяет, что во входном потоке мы ожидаем встретить строку, порождаемую XYZ 1
Любая LL-грамматика и любая LR-грамматика являются …: Однозначными
Верно ли утверждение: Каждая неоднозначная грамматика может быть LR-грамматикой: Нет Грамматика, описывающая арифметические выражения с операторами * и +: E → E+E | E*E | (E) | I является: Неоднозначной
Верно ли утверждение: Грамматика: E → E+T | T; T → T*F | F; F → (E) | I является однозначной Да
Правила, определяющие зависимости между атрибутами, которые представляются графом, называются Семантическими
Дерево разбора, показывающее значения атрибутов в каждом узле, называется: Аннотированным
Атрибуты, значения которых в узле дерева разбора определяются атрибутами родительского и/или дочерних по отношению к родительскому узлов, называются: Наследуемыми
Зависимости между наследуемыми и синтезируемыми атрибутами в узлах дерева разбора показываются с помощью направленного графа, называемого графом … Зависимости
Верно ли утверждение: Значение синтезируемого атрибута в узле вычисляется по значениям атрибутов в дочерних по отношению к данному узлах Да
Дерево разбора в сжатом виде, удобном для представления языковых конструкций, называется: Синтаксическим
Граф, у которого узел представляет общее подвыражение, имеющее более чем одного “родителя”, называется Дагом
Синтаксически управляемые определения, в которых применяются исключительно синтезируемые атрибуты – это: S-атрибутные определения
Верно ли утверждение: Транслятор для S-атрибутного определения может быть реализован с помощью генератора LR-анализаторов типа Yacc. Да
Верно ли утверждение: L-атрибутные определения включают все синтаксически управляемые определения, основанные на LL(1)-грамматиках. Да
Если каждый наследуемый атрибут символа , из правой части продукции зависит только от o атрибутов символов , расположенных в продукции слева от o наследуемых атрибутов А, то синтаксически управляемое определение является L-атрибутным
Схема, представляющая собой контекстно-свободную грамматику, в которой атрибуты, связанные с символами грамматики, и семантические действия заключены в фигурные скобки ( { } ) и вставлены в правые части продукции, называется: Схемой трансляции
Программа, предназначенная для построения синтаксического анализатора КС-языка: YACC
Проверка, выполняемая компилятором, называется: Статической
Проверка, выполняемая целевой программой, называется: Динамической
Если компилятор языка может гарантировать, что скомпилированная программа будет выполняться без ошибок, связанных с типами, то такой язык называется: Строго типизированным
Верно ли утверждение: Два выражения типа структурно эквивалентны тогда и только тогда, когда они идентичны. Да Если два выражения либо представляют собой один и тот же базовый тип, либо сформированы путём одного и того же конструктора, то эти выражения: Структурно эквивалентны
С точки зрения … эквивалентности имя каждого типа представляет собственный тип, отличный от типа с другим именем. Именной
Верно ли утверждение:
С точки зрения структурной эквивалентности все пять переменных имеют один и тот же тип. Да
Преобразование одного типа в другой, когда оно выполняется компилятором автоматически, называется: Неявным
Преобразование, для задания которого программист должен специально что-то написать, называется: Явным
Верно ли утверждение: Явные преобразования с точки зрения программы проверки типов выглядят как применение функции. Да
Символ, имеющий различные значения в зависимости от своего контекста, называется: Перегруженным
Верно ли утверждение: В математике перегруженным символом является + Да
Перегрузка, при которой значение перегруженного символа определяется однозначно, называется: Разрешимой
Функции, которые могут быть выполнены с аргументами “различного типа” называются: Полиморфными
Процедуры, возвращающие значения, называются Функциями
Аргументы, передаваемые вызываемой процедуре, называются Фактическими
Идентификаторы в определении процедуры, имеющие специальный характер, называются: Формальными
Каждое выполнение процедуры, называется ее … Активацией
“Время …” активации процедуры означает последовательность шагов в процессе выполнения программы. Жизни
Верно ли утверждение: Если a и b – активации процедуры, то их времена жизни либо не перекрываются, либо вложены. Да
Если новая активация процедуры может начаться до того, как завершилась её же более ранняя активация, то процедура называется … Рекурсивной
Дерево, для которого выполняются условия:
называется деревом … Активации
Для отслеживания работающих активаций процедур используется … управления Стек
Синтаксическая конструкция, связывающая информацию с именем, называется: Объявлением
В приведённом фрагменте программы var i : integer ; объявление … Явное
Если вхождение имени в процедуре находится в области видимости объявления, расположенного внутри процедуры, то оно называется Локальным
Какой термин означает функцию, отображающую имя в местоположение в памяти:
Среда
Какой термин означает функцию, отображающую местоположение в памяти в хранящееся там значение:
Состояние
Информация, необходимая для однократного выполнения процедуры, поддерживается с помощью непрерывного блока памяти, называемого … Кадром Записью активации
Для всех объектов данных в процессе компиляции используется … распределение памяти: Статическое
Верно ли утверждение: При статическом распределении памяти связь имён с местоположениями в памяти в процессе работы не изменяется и всякий раз при активации процедур их имена связываются с одними и теми же адресами памяти. Да
Верно ли утверждение: При стековом распределении памяти локальные переменные при каждом вызове связываются с новой областью памяти. Да
При стековом распределении памяти значения локальных переменных по окончании активации: Уничтожаются
Верно ли утверждение: При стековом распределении памяти значения локальных переменных по окончании активации сохраняются Нет
Метод передачи параметров, при котором происходит вычисление фактических параметров и полученные r-значения передаются вызываемой процедуре, называется: По значению
Верно ли утверждение: При передаче параметров по значению операции над формальными параметрами не влияют на значения в записи активации вызывающей программы. Да
Метод передачи параметров, при котором вызывающая процедура передаёт вызываемой указатель на адрес памяти каждого фактического параметра, называется: По ссылке
Верно ли утверждение: При вызове процедур и функций число и типы фактических параметров должны быть согласованы с числом и типами формальных параметров. Да
Для отслеживания области видимости и информации о связях имён компилятор использует: Таблицу символов
Для отслеживания области видимости и информации о связях имён компилятор использует таблицу … Символов
Для работы с таблицей символов используются: Хеш-таблицы
Выделенная программой память, к которой невозможно обратиться, называется Мусором
Последовательность инструкций вида x := y op z, где x,y,z – имена, константы или временные переменные, генерируемые компилятором; op – некоторый оператор, называется: Трёхадресным кодом
Реализация трёхадресных инструкций может быть представлена: Четвёрками Тройками Косвенными тройками
Верно ли утверждение: Любой язык программирования является контекстно-свободным: Нет
Все реальные языки программирования являются: Контекстно-зависимыми
Верно ли утверждение: Синтаксис любого языка программирования может быть описан с помощью контекстно-свободной грамматики: Нет
Верно ли утверждение: Полный разбор исходной программы компилятор может выполнить в рамках КС-языков с помощью КС-грамматик и МП-автоматов. Нет
Все реально существующие компиляторы выполняют анализ исходной программы в этапы: Синтаксический анализ Семантический анализ
Верно ли утверждение: Семантический анализ входной программы может быть произведён только после завершения её синтаксического анализа. Да
Распределение памяти выполняется … семантического анализа текста исходной программы. После
По способам распределения область памяти бывает: Статической Динамической
По роли области памяти в результирующей программе она бывает: Глобальной Локальной
Область памяти, которая выделяется один раз при инициализации результирующей программы и действует всё время выполнения результирующей программы, называется: Глобальной
Область памяти, которая выделяется в начале выполнения некоторого фрагмента результирующей программы и может быть освобождена по завершении выполнения данного фрагмента, называется … Локальной
Область памяти, размер которой известен на этапе компиляции, называется: Статической
Область памяти, размер которой на этапе компиляции программы не известен, называется: Динамической
Верно ли утверждение: Для динамической области памяти компилятор не может непосредственно выделить адрес – для неё он порождает фрагмент кода, который отвечает за распределение памяти. Да
Область данных, доступных для обработки в этой процедуре, называется: Дисплеем памяти
Адрес машинной команды, следующей за командой обращения к процедуре или функции – это: Адрес возврата
Адрес машинной команды, следующей за командой обращения к процедуре или функции – это адрес … Возврата
Верно ли утверждение: Адрес возврата никак не обрабатывается в процедуре или функции, но должен быть сохранён на всё время её выполнения Да
Получает на вход промежуточное представление исходной программы и выводит эквивалентную целевую программу – …
Генератор кода
Выходом генератора кода является … Целевая программа
Последовательность смежных инструкций, в которые поток управления входит в их начале и покидает в конце без останова программы, называется … Базовым блоком
Два базовых блока, вычисляющие одинаковые наборы выражений, называются эквивалентными
Запись, при которой операция записывается перед своими операндами, называется: Префиксной
Запись, при которой операция записывается между своими операндами, называется: Инфиксной
Верно ли утверждение: Запись арифметических выражений является примером инфиксной записи Да
Запись математических функций и функций в языках программирования является Префиксной
При исключении из дерева синтаксического разбора цепочки нетерминальных символов и узлов, не несущих смысловой нагрузки при генерации кода, получится дерево … Операций
Верно ли утверждение: Результирующее дерево операций всегда имеет одну и ту же структуру, зависящую только от семантики входного языка Да
Дерево, которое всегда имеет одну и ту же структуру, зависящую только от семантики входного языка, называется: Деревом операций
Дерево, представленное диаграммой:
называется: Деревом операций
Запись операций, предложенная польским математиком Я. Лукашевичем, это: Польская запись
В польской записи знаки операций записываются: За операндами
Верно ли утверждение: Польская запись не требует учитывать приоритет операций и в ней не употребляются скобки Да
Верно ли утверждение: Выражения в форме обратной польской записи всегда поддаются оптимизации Нет
Основной метод порождения кода результирующей программы на основании результатов синтаксического анализа – это: |
Последнее изменение этой страницы: 2019-05-08; Просмотров: 296; Нарушение авторского права страницы