Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика (1 семестр).doc
Скачиваний:
143
Добавлен:
11.06.2015
Размер:
777.73 Кб
Скачать

5. Инструментальное по. Компиляторы и интерпретаторы языков программирования. Типовая технология создания программы

Инструментальное программное обеспечение — программное обеспечение, предназначенное для использования в ходе проектирования, разработки и сопровождения программ, в отличие от прикладного и системного программного обеспечения. Компилятор — программа или техническое средство, выполняющее компиляцию. Компиляция — трансляция программы, составленной на исходном языке высокого уровня, в эквивалентную программу на низкоуровневом языке, близком машинному коду. Трансляция программы — преобразование программы, представленной на одном из языков программирования, в программу на другом языке и, в определённом смысле, равносильную первой. Язык, на котором представлена входная программа, называется исходным языком, а сама программа — исходным кодом. Выходной язык называется целевым языком или объектным кодом .Интерпретатор — программа (разновидность транслятора) или аппаратное средство, выполняющее интерпретацию. Интерпретация — пооператорный (покомандный, построчный) анализ, обработка и тут же выполнение исходной программы или запроса (в отличие от компиляции, при которой программа транслируется без её выполнения).

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

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

Объектный модуль программы получается в результате трансляции исходного текста модуля. В состав объектного модуля программы помещается оттранслированный код модуля, информация для редактора связей, позволяющая объединять модули в единую программу, и отладочная информация (переменные, константы, метки и их адреса). Для объектного модуля по умолчанию используется имя файла, совпадающее с именем файла исходного модуля и с расширением obj.

Загрузочный модуль - это готовая программа в машинных кодах, которая может быть записана во внутреннюю память микроконтроллера. Может храниться на компьютере в бинарном или HEX формате.

Этапы создания программы: Под языком программирования (ЯП) понимают алфавит, систему записи и набор правил, определяющих синтаксис правильной программы. Текст алгоритма задачи, описанный средствами ЯП, называют исходным модулем. Средством, предназначенным для перевода исходного модуля в последовательность команд ЭВМ, является специальная программа. Имеется два основных типа таких программ — компиляторы и интерпретаторы. Компилятор транслирует весь текст исходного модуля в машинный код, называемый объектным модулем, за один непрерывный процесс. Объектный модуль может содержать неразрешенные ссылки на другие модули или программы, а также перемещаемый код. Поэтому перед выполнением программы ее объектный модуль должен быть обработан специальной программой — редактором связей (разрешающей все внешние ссылки и создающей загрузочный модуль) и загрузчиком (определяющим для загрузочного модуля абсолютные адреса в ОП)

Схема этапов создания программы:

Исполняемый модуль ->Компилятор с Языком Программирования ->Объектный модуль ->Редактор связей ->Загрузочный модуль->Загрузчик ->Выполняемый загрузочный модуль

  1. Компиляторы и интерпретаторы ЯП. Библиотеки стандартных программ. Специализированные программы редактирования, отладки, загруки тестироваия программ. Интегрированные системы программирования(разработки программ) и их функции.

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

Интерпретатор - программа или устройство, осуществляющее пооператорную трансляцию и выполнение исходной программы. В отличие от компилятора, интерпретатор не порождает на выходе программу на машинном языке. Распознав команду исходного языка, он тут же выполняет ее. Как в компиляторах, так и в интерпретаторах используются одинаковые методы анализа исходного текста программы. Но интерпретатор позволяет начать обработку данных после написания даже одной команды. Это делает процесс разработки и отладки программ более гибким. Кроме того, отсутствие выходного машинного кода позволяет не «захламлять» внешние устройства дополнительными файлами, а сам интерпретатор можно достаточно легко адаптировать к любым машинным архитектурам, разработав его только один раз на широко распространенном языке программирования. Поэтому, интерпретируемые языки, типа JavaScript, VB Script, получили широкое распространение. Недостатком интерпретаторов является низкая скорость выполнения программ. Обычно интерпретируемые программы выполняются в 50-100 раз медленнее программ, написанных в машинных кодах.

Библиотека стандартных программ (БСП)—это часть при­кладного программного обеспечения, представляющая собой со­вокупность отдельных программ. Каждая из программ решает какую-то одну задачу из числа тех, которые часто встречаются в работе специалистов разных специальностей. Специализированные программы для редактирования, отладки, загрузки, тестирования программ

Интегрированные системы программирования (СП) представляют собой интегрированные инструментальные средства, обеспечивающие все основные функции по разработке программ: создание и редактирование исходных модулей, компиляцию или интерпретацию, создание загрузочных модулей и их выполнение, отладка, тестирование, БСП, сохранение и документирование и т.д. Многие СП оформляются в виде пакетов с сопутствующим им обеспечением и сопровождением. Типичными примерами СП являются известные пакеты Turbo-Pascal, Turbo-С, Turbo-Prolog фирмы Borland для IBM-совместимых ПК.

  1. Коммерческое и открытое ПО. Преимущества и недостатки.

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

+ Коммерческого ПО:

  1. Качественная Тех.Поддержка

  2. Минимальные сроки внесения изменений

  3. Широкий класс решаемых задач

  4. Возможность заказа программного продукта

+ Открытого ПО:

  1. Возможность использования Программного продукта с любой целью (нулевая свобода)

  2. Можно изучить поведение программы и адаптировать под свои цели.

  3. Свободное распространение данного продукта

  4. Право вносить изменения и распространять уже модифицированный вариант