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

Трансляторы

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

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

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

Существует три вида трансляторов: интерпретаторы, компиляторы и ассемблеры.

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

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

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

Любой транслятор решает следующие основные задачи:

  • анализирует транслируемую программу, в частности определяет, содержит ли она синтаксические ошибки;

  • генерирует выходную программу (ее часто называют объектной или рабочей) на языке команд ЭВМ (в некоторых случаях транслятор генерирует выходную программу на промежуточном языке, например, на языке ассемблера);

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

Язык программирования Паскаль

Язык программирования Паскаль (назван в честь выдающегося французского математика и философа Блеза Паскаля (1623 — 1662)), разработан в 1968 — 1971 гг. Н.Виртом. Язык Паскаль, созданный первоначально для обучения программированию как систематической дисциплине, скоро стал широко использоваться для разработки программных средств в профессиональном программировании.

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

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