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