ВУЗ:
Составители:
25
Интерпретаторы
Интерпретатор – это программа, которая воспринимает входную про-
грамму на исходном языке и выполняет ее.
В отличие от трансляторов интерпретаторы не порождают результирую-
щую программу (и вообще какого-либо результирующего кода) – и в этом
принципиальная разница между ними. Интерпретатор, так же как и транслятор,
анализирует текст исходной программы. Однако он не порождает результи-
рующей программы, а сразу же выполняет исходную в соответствии с ее смыс-
лом, заданным семантикой входного языка. Таким образом, результатом работы
интерпретатора будет результат, заданный смыслом исходной программы, в
том случае, если эта программа правильная, или сообщение об ошибке, если
исходная программа неверна.
Конечно, чтобы исполнить исходную программу, интерпретатор так или
иначе должен преобразовать ее в язык машинных кодов, поскольку иначе вы-
полнение программ на компьютере невозможно. Он и делает это, однако полу-
ченные машинные коды не являются доступными для пользователя интерпрета-
тора. Эти машинные коды порождаются интерпретатором, исполняются и
уничтожаются по мере надобности. Пользователь же видит результат выполне-
ния этих кодов – результат выполнения исходной программы.
История развития компиляторов
Первые программы, которые создавались еще для ЭВМ первого поколе-
ния, писались непосредственно на языке машинных кодов. И тогда же стало яс-
но, что человек не должен и не может говорить на языке машинных команд,
даже если он специалист по вычислительной технике. Однако и все попытки
научить компьютер говорить на естественном человеческом языке успехом до
сих пор не увенчались. С тех пор все развитие программного обеспечения ком-
пьютеров неразрывно связано с возникновением и развитием компиляторов.
Первыми компиляторами были компиляторы с языков ассемблера или, как
они назывались, мнемокодов. Мнемокоды превратили язык машинных команд
в более-менее доступный пониманию специалиста язык мнемонических (пре-
имущественно англоязычных) обозначений этих команд. Эти компиляторы
элементарно просты, но они продолжают играть существенную роль в системах
программирования по сей день.
Следующим этапом стало создание языков высокого уровня. Сначала поя-
вились компиляторы с таких языков, как FORTRAN, ALGOL-68, PL/I. Они бы-
ли ориентированы на большие ЭВМ с пакетной обработкой задач. Из вышепе-
речисленных только FORTRAN продолжал использоваться до недавнего вре-
мени, поскольку имеет огромное количество библиотек различного назначения.
Многие языки, появившись, так и не получили широкого распространения и
известны лишь узкому кругу специалистов (Ada, Modula, Simula). Сейчас на
рынке программных систем доминируют C, C++ и Pascal. Первый возник вме-
сте с системой Unix и вместе с ней получил распространение, а потом перешел
под другие ОС. Второй удачно воплотил в себе пример реализации идей объ-
ектно-ориентированного программирования на хорошо зарекомендовавшей
Страницы
- « первая
- ‹ предыдущая
- …
- 21
- 22
- 23
- 24
- 25
- …
- следующая ›
- последняя »