Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на билеты (1-ый семестр ВФ).doc
Скачиваний:
205
Добавлен:
10.05.2014
Размер:
1.15 Mб
Скачать
  1. Инструментальное по эвм, разновидности трансляторов

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

Ассемблер – трансляторы с языков Ассемблер. Хотя у каждого типа ЭВМ имеется свой язык, все разновидности трансляторов с этих языков имеют единое название – Ассемблер.

Компиляторы – наиболее распространенный вид транслятора. После создания текста программы (исходного модуля) на машинном носителе с помощью программы EDIT (1-й этап) он загружается в ОП и последовательно, строчка за строчкой, обрабатывается компилятором (COMPILE). Как правило, компиляторы имеют синтаксическую диагностику, поэтому этот процесс (EDIT-COMPILE) носит итерационный характер. После завершения синтаксической отладки (2-й этап) создается объектный модуль (О) этой программы, который на следующем этапе 3 обрабатывается редактором связи (или компоновщиком). Компоновщик включает в программу необходимые библиотечные модули и в результате работы этой программы создается исполнимая программа (В). Таким образом, в результате работы трех обрабатывающих программ имеются три программы одного и того же функционального назначения в различных форматах. По завершении каждой стадии программы перечисленных форматов копируются на диск, а соответствующие обрабатывающие программы также удаляются из ОП. В связи с этим, чтобы запустить изготовленную программу, ее необходимо загрузить (этап 4 – LOAD) в ОП и произвести ее запуск (этап 5 – RUN).

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

Транслятор, использующий промежуточный код, был впервые разработан в университете Сан-Диего (штат Калифорния) в рамках ОС UCSD p-System. Цель разработки – предложить студентам простой инструмент, используемый на различных типах компьютеров. Система использовала «псевдокод» – p-код, который является чем-то средним между машинным и исходным языками. Он распознавался любым микропроцессором при условии, если последний имел соответствующий интерпретатор. Любая программа в рамках этой системы запускалась на различных типах компьютеров, таких, как Apple, DEC-PDP11, Osborn. Однако эта система являлась значительно более медленной, поскольку она должна была «переводить» команды, которые поступают на микропроцессор. Она имела хождение в университетских кругах, но практически не использовалась в профессиональных задачах. Интерес к промежуточному коду значительно возрос в связи с сетевыми приложениями, требующими платформенной независимости запускаемых приложений. Практически все современные инструментальные средства сетевого программирования, такие, как Java, C# и т.п., используют промежуточный код, который имеет общее название байт-код.

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

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

Соседние файлы в предмете Информатика