ТРАНСЛЯТОРЫ

ЯЗЫКИ ПРОГРАММИРОВАНИЯ -

- язык описания объекта

- язык описания задания

- язык директив

- язык редактирования

- языки банка данных

Язык описания объекта предназначен для ввода пользователем информации о структуре и параметрах объекта проектирования. На основе этой информации в САПР строится математическая модель объекта. Текст описания может вводиться в символьной или графической форме. По мере увеличения производительности вычислительных комплексов, все больше используется графический ввод.

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

Язык директив служит для задания порядка выполнения проектных процедур или операций в САПР. Основными элементами языка являются команды или директивы, последовательность которых и определяет ход проектирования. Часто этот язык создается в виде меню.

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

Языки базы данных предназначены для ввода, использования и сопровождения информации баз данных. Как правило, пользователю САПР доступны для изменения данные только его частной базы данных; ведение генеральной базы данных осуществляет администратор БД.

 

Выполнение на ЭВМ программы, написанной на каком – либо языке, отличном от машинного, требует преобразования исходной информации в машинные команды, записанные в двоичной системе в ОЗУ. Это преобразование осуществляется программами или техническими устройствами, которые называются трансляторами. Транслятор преобразует заданную информацию с одного языка на другой. Программа на входе транслятора и ее язык называются исходными, на выходе транслятора – объектными.

Трансляторы подразделяются на несколько видов:

- интерпретаторы,

- компиляторы,

- ассемблеры,

- конверторы.

Интерпретатор осуществляет пооператорное (покомандное) преобразование исходного текста программы в машинные команды и ее выполнение.

Компилятор преобразует весь текст программы в объектный

модуль.Затем скомпилированная рабочая программа исполняется.

Если исходный язык – ассемблер, то транслятор называется ассемблером.

Если исходный и объектный языки относятся к одному и тому же уровню языков, то транслятор называется конвертором.

Исполнение программ с использованием интерпретатора занимает больше времени, иногда в сотни раз, чем исполнение скомпилированных текстов. Однако применение интерпретаторов удобно в тех случаях, когда в процессе выполнения программ необходимо вносить изменения в текст.

Процесс трансляции состоит из нескольких этапов, называемых фазами трансляции.

Основные этапы

- лексический и синтаксический анализ,

- генерация кода.

Лексический анализ служит для разделения исходного текста на отдельные элементарные языковые единицы, которыми являются:

- идентификаторы,

- числа,

- метки,

- знаки операций.

Выявляются недопустимые сочетания символов языка, например, идентификатор, начинающийся с цифры, запрещенный символ.

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

Математическим аппаратом, используемым при построении анализаторов, является аппарат формальных грамматик.