Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 1_ОАП.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
141.82 Кб
Скачать

4.Технология трансляции программ. Системы программирования.

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

Появление языков программирования было связано с осознанием того факта, что перевод алгоритма, написанного на “почти” естественном языке, на машинный язык может быть авто­матизирован и, следовательно, возложен на плечи машины. Здесь важно различать язык и его реализацию. Сам язык - это система записи, регламентируемая набором правил, определяющих его лексику и синтаксис. Реализация языка - это программа, которая преобразует эту запись в последовательность машинных команд в соответствии с прагматическими и семантическими правилами, определенными в языке.

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

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

В принципе любой язык может быть и компилируемым, и интерпретируемым, однако в большинстве случаев у каждого языка есть свой, предпочтительный способ реализации. Fortran, Pascal, Modula-2 в основном компилируют. Такие языки как Logo, Fort почти всегда интерпретируют. BASIC и Lisp широко используется в обеих формах. Каждый из этих способов имеет как свои преимущества, так и недостатки:

Основные преимущества компиляции:

1.Скорость выполнения готовой программы;

2.Независимость программы от системы реализации;

Основные недостатки компиляции:

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

2.Сравнительно большой объем памяти, занимаемый компилятором в ОЗУ;

Понятие о системе программирования.

Рассмотрим последовательность изменений, претерпеваемую програм­мой на пути к исполнению (в процессе компиляции).

Текст программы, написанной на языке программирования, называется исходным модулем. Достаточно сложные программы могут состоять из нескольких модулей, взаимодействующих друг с другом. Исходный модуль - это входной поток для программы - компилятора, которая

  1. осуществляет лексический анализ входного потока ;

  1. осуществляет синтаксический анализ входного потока;

  1. генерирует машинный код, являющийся переводом исходного модуля на язык ЭВМ в условных адресах.

В результате этих преобразований на выходе получается объектный модуль.

Даже если мы имеем дело с одним исходным модулем, для успешного исполнения программы необходимо “связать” ее с некоторыми другими програм­ма­ми (например, со стандартными процедурами ввода-вывода, реализованными в языке). Эти функции выполняет программа - редактор связей. Выходной поток этой программы называют загрузочным модулем.

Современная технология применения ЭВМ требует, чтобы исполняемую программу можно было размещать в произвольном месте ОЗУ. Поэтому и загрузочный модуль написан в условных адресах. Размещением загрузочного модуля в памяти занимается программа - загрузчик.

Как правило, программы, только что написанные, содержат множество ошибок. Ошибки бывают:

а) синтаксические и лексические (выявляются на этапах лексического и синтаксического анализа). Например, ошибка y := sos(x) вместо y := cos(x) - лексическая, а ошибка в операторе

if x < 0 then y := 0; else y := 1 - синтаксическая.

б) семантические (выявляются на этапе отладки). Например, ошиб­ка в операторе присваивания - деление на ноль: x := y; z := 1/(x - y) .

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

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

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

Таким образом, для работы в языке программирования используются специальные пакеты программ, называемые системами программирования (СП). В состав СП входят:

  1. Оболочка

  1. Текстовый редактор

  1. Компилятор

  1. Редактор связей

  1. Загрузчик

  1. Отладчик

  1. Библиотеки стандартных процедур и функций

  1. Сервисные программы

Краткое описание системы Turbo Pascal.

Система программирования Turbo-Pascal (TP) была создана фирмой Borland. Первая версия системы, появившаяся на рынке в 1985 году, (TP v.3.0) быстро завоевала популярность благодаря хорошо реализованной идее интеграции всех частей системы в единой среде программирования. В настоящее время, как профессионалами, так и в обучении активно используется система TP v.7.0, возможности которой значительно расширены.

Вызов системы TP выполняется директивой Turbo. Весь процесс программирования выполняется в среде ИИО.

Экран Интегрированной Инструментальной Оболочки