Плюсы:
1. Исполнение программы можно производить сразу после её написания, причём одновременно с этим выявляются ошибки всех типов, что ускоряет отладку.
2. Файлы с такими программами занимают небольшой объем памяти, поскольку содержат лишь тексты.
Минусы:
1. Низкая скорость исполнения программы, поскольку во время её выполнения поводится синтаксический анализ каждой строки, перевод её на машинный язык и т.д.
2. Программа может выполняться только под управлением интерпретатора.
В связи с этими особенностями, интерпретаторы в основном используются в специальных прикладных программных системах. В системах программирования, для так называемых алгоритмических языков, имеются как интерпретаторы, так и компиляторы. Интерпретаторы используются для отладки и решения несложных задач, а компиляторы для создания готовых программ, независимых от системы программирования.
4.2. Уровни языков программирования.
Первый текстовый язык программирования Short Code и интерпретатор для этого языка был создан в конце 40-х годов ХХ века Джоном Моучли.
|
|
В 1951 г. Грей Хоппер создала первую в мире систему программирования с компилятором и редактором связей для этого языка. Она же ввела термины компилятор, подпрограмма, отладчик.
Обычно языки делятся на языки низкого и высокого уровня. Языки программирования низкого уровня ориентированы на определенный тип процессора и учитывают его особенности. Языки самого низкого уровня называются ассемблером. Он просто представляет каждую машинную команде не виде определенных двоичных чисел, а с помощью текстовых условных обозначений. Для некоторых типов процессоров, кроме ассемблера, существуют языки, в которых некоторые текстовые обозначения (операторы) соответствуют не одной, а короткой последовательности нескольких машинных команд. Такие языки низкого уровня называются макроассемблерами.
Языки низкого уровня позволяют создавать наиболее эффективные и компактные программы, т.к. разрабатываемый программист может описывать использование всех возможностей процессора. Однако, при этом затрудняется отладка больших программ и получаемая программа (текст) не может быть перенесена на компьютер с другим типом процессора.
Языки высокого уровня значительно ближе и понятнее человеку, чем компьютеру. Особенности конкретных аппаратных архитектур в них не учитываются, поэтому создаваемые программы на уровне текстов легко переносимы на другие компьютеры (с другими процессорами), в которых есть соответствующая система программирования. Такие языки – языки описания алгоритмов решения задач удобные для человека. Разрабатывать программы на них значительно проще, а ошибок при создании программ допускается меньше.