Один день из жизни сисадмина – Admin-Day

Блог системного администратора об it индустрии и околокомпьютерных тем. Жизненный опыт и истории в статьях и заметках. Один день из жизни сисадмина

Интерпретатор – специальная компьютерная программа

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

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

Типы исполнителей

Интерпретаторы могут вести себя тремя разными способами в зависимости от того, как они обрабатывают исходный код программы:
выполнить исходный код напрямую
переводит исходный код в более эффективный промежуточный код, который затем запускает
непосредственно выполняет предварительно скомпилированный предварительно скомпилированный промежуточный код, который является продуктом части интерпретатора
Perl , Python или MATLAB – это интерпретаторы второго типа. UCSD Pascal и Java относятся к типу 3 (исходные коды предварительно скомпилированы, хранятся в машинно-независимой форме, которая связывается и интерпретируется при запуске или компилируется, если используется JIT ). Некоторые языки программирования (например, Smalltalk или Python ) могут сочетать тип 2 и тип 3. Примерами интерпретаторов типа 1 являются интерпретаторы оболочки Unix , COMMAND.COM или BASIC.

Преимущества интерпретации

Интерпретация кода имеет некоторые преимущества перед трансляцией машинного кода и прямым выполнением:

  • Скорость разработки – особенно для более крупных проектов, цикл редактирования – выполнения – исправление ошибок быстрее при интерпретации.
  • Возможность настройки – состояние интерпретатора однозначно определяется, его работа в точности соответствует исходному коду (не используются оптимизации , которые могут скрыть или изменить исходную структуру кода).
  • Совместимость – одна и та же программа может без проблем работать на многих целевых архитектурах, язык обычно скрывает различия между разными операционными системами.
  • Управление памятью – при запуске интерпретируемой программы переменные не должны быть привязаны к физическому адресу в оперативной памяти, поэтому можно переназначить переменные, что может предотвратить фрагментацию памяти.
  • Простота – в общем, интерпретатор языка создать намного проще, чем компилятор; интерпретация значительно упрощает создание прикладных или экспериментальных языков, в то время как простота создания и изменения интерпретаторов, с другой стороны, может привести к проблемам совместимости.

Поделиться ссылкой:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Пролистать наверх
Мы используем cookie-файлы для наилучшего представления нашего сайта. Продолжая использовать этот сайт, вы соглашаетесь с использованием cookie-файлов.
Принять