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

19. Контекстный анализатор

Контекстный анализатор проверяет выполнение контекстных условий (соответствия типов данных, числа параметров процедур, отсутствия передачи управления внутрь тела цикла и многих других), а также расширяет семантическое дерево программы до её полной семантической структуры. На практике его обычно соединяют с синтаксическим анализатором.

Основой контекстного анализа является:

  • идентификация или связывание определяющих и использующих вхождений. И

  • контроль типов в выражениях и операторах присваивания.

Определяющие вхождения переменных, процедур, меток и других объектов программы задаются их описаниями. Остальные вхождения объектов называются использующими. Каждое использующее вхождение должно быть связано хотя бы с одним определяющим. Установление такой связи называется идентификацией.

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

В языках с блочной структурой блок – это некоторая совокупность описаний и операторов (в Паскале это процедуры и программа). Блоки образуют дерево по отношению вложения друг в друга.

20. Виртуальная машина

21.Трансляция процедур

Виртуальная машина — это полностью изолированный программный контейнер, который работает с собственной ОС и приложениями, подобно физическому компьютеру. Виртуальная машина работает полностью аналогично физическому компьютеру и обладает собственными ЦП, памятью, жестким диском и сетевым адаптером.Установленная на ней операционная система, а также приложения и другие компьютеры в сети оказываются не в состоянии отличить, имеют ли они дело с виртуальной или физической машиной. Даже сама виртуальная машина считает себя «настоящим» компьютером. Но несмотря на это виртуальные машины состоят исключительно из программных компонентов и не включают оборудование. Это дает им ряд уникальных преимуществ над физическим оборудованием. Преимущества виртуальных машин.В общем и целом, виртуальные машины VMware предлагают четыре основные характеристики, полезные для заказчиков. Совместимость: виртуальные машины совместимы со всеми стандартными компьютерами x86. Изоляция: виртуальные машины изолированы друг от друга так, как если бы они работали на разных физических системах. Инкапсуляция: в виртуальных машинах инкапсулируется полная вычислительная среда. Независимость от оборудования: виртуальные машины работают независимо от базового оборудования. Использование виртуальных машин в качестве структурных элементов виртуальной инфраструктуры.

22. Самотранслятор

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