Компиляторы и интерпретаторы – постоянные спутники программистов, хотя некоторыми из этих программ пользуются каждый день обычные пользователи, не подозревая об этом. Речь, конечно, в этом случае идет о скриптовых языках, встроенных в Windows и множество офисных программ. Но «настоящие» компиляторы – инструмент суровых программистов.

Можно знать, а можно и не знать о том, что почти все программы сейчас пишутся на языках высокого уровня. Текст программы при большом желании можно прочитать, а при еще большем – даже понять, так как все команды в ней представлены обычно английскими словами или их словосочетаниями. Так, команда «for» в Паскале, Си или Бейсике позволяет организовать цикл выполнения некоего блока команд – «для i:=1 до 10 делать <блок операторов>». Не сильно наглядно, но ясно, что здесь 10 раз выполнится некий блок операторов. Эта «понятность» нужна только людям. Ну, и еще для того, чтобы была возможность перенести программу в исходном виде в другую операционную систему любого компьютера, где поддерживается данный язык программирования.

К сожалению или нет, но процессор компьютера не понимает таких простых и естественных команд: он оперирует командами более низкого уровня. Скажем, данная конструкция будет выглядеть так:

  1. Поместить в счетчик число 10;
  2. Обнулить регистр;
  3. Прибавить к регистру 1;
  4. Сравнить регистр со счетчиком;
  5. Если оба равны, то перейти к шагу 8;
  6. <Блок операторов>;
  7. Перейти к шагу 3;
  8. Конец программы.

Это не оптимальная логическая конструкция, но смысл понятен. Вместо этих слов процессор выполняет код еще более низкого уровня – машинный код, который уникален для каждого вида процессора. К счастью, большинство Intel-процессоров совместимы с предыдущими моделями.

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

Работа интерпретатора организована проще: обычно это среда выполнения, где программа читает программу построчно, переводит каждую строку во внутренний формат и выполняет ее. Скорость выполнения программы при этом резко падает, зато при такой модели выполнения очень легко искать ошибки в программе. К примеру, все старые версии Бейсика работали именно таким образом, а некоторые языки программирования могут работать исключительно в интерпретирующем режиме (включая даже серверные языки вроде PHP).

captcha

Что такое облачное хранилище и как им пользоваться? Что такое облачное хранилище и как им пользоваться?
Как выбрать пластины для теплообменника? Пластины для теплообменника
Изучение языка ECMAScript: основа современной веб-разработки История языка ECMAScript
Как добавить комментарий в HTML? HTML примеры
Apple позволит разработчикам распространять приложения напрямую с их сайтов Apple позволит разработчикам распространять приложения напрямую с их сайтов
jQuery 4.0 сокращает поддержку браузеров, удаляет API Новое в jQuery 4.0
Как продвинуть Telegram-канал: с нуля до результата Как продвинуть канал в Telegram с нуля?
Получить IT профессию с нуля: академия Eduson Получить IT профессию с нуля
Перспективы эволюции SEO: встречайте будущее продвижения в поисковых системах Будущее SEO-продвижения
Создание сайтов в Алматы: агентство site-promote.kz Разработка сайта компании
Антипкин Михаил Сергеевич о метавселенной, открывающей безграничные возможности для инноваций и экспериментов Антипкин Михаил Сергеевич о метавселенной
Сёрфинг с браузером FraudFox: исчерпывающее руководство Сёрфинг с браузером FraudFox
Где найти лицензионные ключи активации к ПО? Где найти лицензионные ключи активации к ПО?
Курсы веб дизайна: обучение онлайн Курсы веб дизайна: обучение онлайн
Как продлить срок службы бытовой техники? Как продлить срок службы бытовой техники?
Основы VPS/VDS: что нужно знать перед арендой? Основы VPS/VDS: что нужно знать перед арендой?
Откройте для себя азарт Mostbet KZ - ведущего онлайн-казино для геймеров Откройте для себя азарт Mostbet KZ - ведущего онлайн-казино для геймеров
Топ-10 игр для Android стоимостью менее $5 Топ-10 игр для Android стоимостью менее $5
Проверка авто в базе ГИБДД перед покупкой Проверка авто в базе ГИБДД перед покупкой
Бизнес-психология в онлайн-институте Smart Бизнес-психология в онлайн-институте Smart