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

17. Типовая система программирования. Схема функционирования. Компилятор.

Современные системы программирования обычно предоставляют пользователям мощные и удобные средства разработки программ. В них входят:

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

интегрированная среда разработки;

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

обширные библиотеки стандартных программ и функций;

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

"дружественная" к пользователю диалоговая среда;

многооконный режим работы;

мощные графические библиотеки; утилиты для работы с библиотеками

встроенный ассемблер;

встроенная справочная служба;

другие специфические особенности.

Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются.

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

Интерпретатор (англ. interpreter — истолкователь, устный переводчик) переводит и выполняет программу строка за строкой.

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

18. Структура языков программирования высокого уровня. Грамматика. Распознаватели.

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

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

Лексические анализаторы обычно используются для распознавания элементарных конструкций, синтаксическое описание которых можно осуществить с применением праволинейных грамматик. Это наиболее простой класс грамматик, эквивалентных по мощности детерминированным конечным автоматам. Использование праволинейных грамматик для построения автоматов широко освещается в литературе [14, 16]. Простота лексического анализа заключается также в том, что лексемы – это единственные нетерминалы, используемые в ходе распознавания. Даже, если в грамматике, используемой для описания лексем, существуют промежуточные нетерминалы, они исчезают при построении конечного автомата, преобразуясь в его состояния. Входными символами конечного автомата являются терминальные символы и их классы символов, формируемые транслитератором.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]