Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
– это программа, которая переводит программу на исходном (входном) языке в эквивалентную ей программу на результирующем (выходном) языке.
В работе транслятора участвуют три программы:
Сам транслятор является программой. Т.е. транслятор – это часть программного обеспечения (ПО), он представляет собой набор машинных команд и данных и выполняется компьютером, как и все прочие программы в рамках операционной системы (ОС)
Исходными данными для работы транслятора служит программа на исходном языке программирования. Эта программа называется входной или исходной программой
Выходными данными транслятора является программа на результирующем языке. Эта программа называется результирующей программой
Важным пунктом в определении транслятора является эквивалентность исходной и результирующей программ – совпадении их смысла с точки зрения семантики входного и выходного языка. Без выполнения этого условия сам транслятор теряет практический смысл.
Для создания транслятора нужно прежде всего выбрать входной и выходной языки. С точки зрения преобразования предложений входного языка в эквивалентные им предложения выходного языка транслятор выступает как переводчик.
Результатом работы транслятора будет результирующая программа, но только в том случае, если текст исходной программы является правильным – не содержит ошибок с точки зрения синтаксиса и семантики входного языка. В противном случае результатом работы программы будет сообщение об ошибке.
Компилятор – это транслятор, который осуществляет перевод сходной программы в эквивалентную ей результирующую программу на языке машинных команд или на языке ассемблера.
Таким образом, компилятор отличается от транслятора лишь тем, что результирующая программа всегда должна быть написана на языке машинных кодов или ассемблера. Результирующая программа транслятора, в общем случае, может быть написана на любом языке (например, транслятор с языка Pascal на язык C).
Интерпретатор - это программа, которая воспринимает исходную программу на входном (исходном) языке и выполняет ее. Основное отличие интерпретаторов от трансляторов и компиляторов заключается в том, что интерпретатор не порождает результирующую программу, а просто выполняет исходную программу. Подавляющее большинство интерпретаторов действуют так, что исполняют исходную программу последовательно, по мере ее поступления на вход интерпретатора. Тогда пользователю не надо ждать завершения компиляции всей исходной программы. Более того, он может последовательно вводить исходную программу и тут же наблюдать результат ее выполнения по мере поступления.
Дата публикования: 2015-01-26; Прочитано: 816 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!