Как компилятор помогает человек и компьютеру понять друг друга

Цифровой океанHi-Tech

Что такое компилятор? Как работает: виды и примеры

Рассказываем об инструменте, который помогает человеку и компьютеру понять друг друга и способствует эффективному взаимодействию

Юрий Филиппов

1715612471_oskaryildizcOkpTiJMGzAunsplash.jpg

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

Что такое компилятор?

Компилятор — это вид специального ПО, которое трансформирует программный код (программный текст) языка программирования в двоичный код, легко выполняемый компьютером. От пользователя компилятор получает исходник, а получившуюся комбинацию нулей и единиц передает компьютеру. Для преобразования программа использует методы анализа и синтаксиса.

Первые компиляторы

Впервые программа, преобразующая команды человека в двоичную форму, была создана в 1951 году американским программистом Грейс Хоппер. Эта программа за миллисекунды трансформировала программный текст высокого уровня, организовывала подпрограммы и распределяла память ЭВМ. Новую программу Хоппер назвала компоновщиком (англ. compiler). Такое название она объяснила тем, что программа подбирает нужную подпрограмму из библиотеки компьютера. Первый компилятор получил название A-0.

Впоследствии языки программирования стали снабжаться специализированными компиляторами. В 1957 было создано средство для языка FORTRAN, а в 1960-х — ПО от создателей COBOL.

Сегодня разработано множество компилирующих программ для разных языков программирования и для выполнения различных задач. Если вы не знаете, какой выбрать для изучения, прочитайте нашу статью.

Какие задачи выполняет компилятор

Кроме изложения программного кода в понятной для компьютера форме, компилятор выполняет следующие задачи:

1. Оптимизация программного текста, в рамках которой уменьшается объем используемой памяти, увеличивается скорость выполнения.

2. Анализ синтаксиса, лексики, семантики, который позволяет избежать ошибки в проектировании исходного текста.

3. Статический анализ кода для определения потенциальных уязвимостей программы.

4. Создание готовых к запуску исполняемых файлов на основе программного текста.

Как работает компилятор

Преобразование программного кода в машинный проходит в несколько этапов.

Лексический анализ

Программа идентифицирует лексические единицы исходника и группирует их по классам, таких как идентификаторы, константы, ключевые слова и т. д. Лексический анализ выполняется для прочтения компилирующим ПО исходного кода.

Синтаксический анализ (парсинг)

Определение правил написания исходника, построение синтаксического дерева. Если дерево получилось построить, значит, ошибок в исходнике нет. Проблемы в построении дерева свидетельствуют об ошибках, о которых компилятор сообщит пользователю.

Семантический анализ

Проверка согласованности элементов исходника, их смысла и значения.

Авторизуйтесь, чтобы продолжить чтение. Это быстро и бесплатно.

Регистрируясь, я принимаю условия использования

Рекомендуемые статьи

Поехали! История полета первого космического корабля «Восток-1» Поехали! История полета первого космического корабля «Восток-1»

Как в СССР велась подготовка к первому полету человека в космос

Цифровой океан
Посол Советского Союза Посол Советского Союза

В истории были женщины, которые волею судьбы играли роль посла

Знание – сила
Как рекламщики узнают номера телефонов посетителей сайта? Как рекламщики узнают номера телефонов посетителей сайта?

Вы зашли на сайт застройщика, а вам уже звонят и предлагают купить квартиру?

CHIP
6-летняя девочка делает макияж в детский сад: как поколение альфа рискует травмировать себя 6-летняя девочка делает макияж в детский сад: как поколение альфа рискует травмировать себя

Почему поколение альфа так одержимо макияжем и чем это может им навредить?

Psychologies
7 подручных средств: чем заменить гантели для тренировки в домашних условиях 7 подручных средств: чем заменить гантели для тренировки в домашних условиях

Чем дома заменить инвентарь для силовых тренировок?

ТехИнсайдер
«Министерство неджентльменских дел»: почему фильм Гая Ричи проигрывает Тарантино «Министерство неджентльменских дел»: почему фильм Гая Ричи проигрывает Тарантино

Как долгожданный экшен британского режиссера пытается развлекать зрителя

Forbes
Гениальное просто! Вот почему вам иногда нужно скучать: интересные факты Гениальное просто! Вот почему вам иногда нужно скучать: интересные факты

Как скука может нам помочь прикоснуться к своей истинной природе?

ТехИнсайдер
Российское производство: что из себя представляет новая операционная система kvadraOS Российское производство: что из себя представляет новая операционная система kvadraOS

В Единый реестр российских программ была внесена новая операционная система

ТехИнсайдер
Лучшие роли Бернарда Хилла, сыгравшего Теодена из «Властелина колец» Лучшие роли Бернарда Хилла, сыгравшего Теодена из «Властелина колец»

Вспоминаем лучшие роли известного британского актера Бернарда Хилла

Maxim
Что такое «воздушный протеин»: еда будущего Что такое «воздушный протеин»: еда будущего

Что такое Solein? И почему его называют «воздушным протеином»?

ТехИнсайдер
Неизвестный флот Неизвестный флот

Избранные главы документальной книги Алексея Иванова «Речфлот»

RR Люкс.Личности.Бизнес.
Стриптизерша в Нью-Йорке, протесты в Иране и устрашающая Деми Мур: лучшие фильмы Каннского фестиваля — 2024 Стриптизерша в Нью-Йорке, протесты в Иране и устрашающая Деми Мур: лучшие фильмы Каннского фестиваля — 2024

Фильмы Каннского фестиваля 2024, которые нужно посмотреть

Правила жизни
10 вещей, которые сделаны из нефти. Вы удивитесь! 10 вещей, которые сделаны из нефти. Вы удивитесь!

От шоколада до зубной пасты — многие товары для дома производятся из нефти

ТехИнсайдер
8 случаев внезапных смертей глав государств 8 случаев внезапных смертей глав государств

Президенты, умершие насильственной смертью или в результате несчастных случаев

Maxim
Сера преткновения Сера преткновения

Каким радикальным способом разрубили норильский экологический узел

Монокль
Город в поисках культурной идентичности Город в поисках культурной идентичности

Улан-Удэ: русская провинциальная архитектура и монгольская героика

Weekend
Арифметика везения Арифметика везения

3 удачных и 3 опасных цифры для привлечения денег

Лиза
«Любуйтесь, мамаша, вот он, ребенок ваш»: как женщины переживают акушерское насилие «Любуйтесь, мамаша, вот он, ребенок ваш»: как женщины переживают акушерское насилие

Книга казахской писательницы Алтынай Султан об опыте беременности

Forbes
Своим путём Своим путём

Разработка российского Стандарта отчетности об устойчивом развитии

Позитивные изменения
Когда пить кофе: 7 вопросов о бодрящем напитке Когда пить кофе: 7 вопросов о бодрящем напитке

Что нужно знать, чтобы пить правильный кофе?

Psychologies
Дуэты с мировыми звездами, болезни и одна женщина: горе и радости жизни Николая Носкова Дуэты с мировыми звездами, болезни и одна женщина: горе и радости жизни Николая Носкова

Строчка «на меньшее я не согласен» лучшего всего описывает жизнь Николая Носкова

VOICE
Смотрите фильмы во время работы или учебы? Это может увеличить продуктивность: интересный факт! Смотрите фильмы во время работы или учебы? Это может увеличить продуктивность: интересный факт!

Хотите успеть больше? Попробуйте сходить в кинотеатр в течение рабочего дня!

ТехИнсайдер
Овца в волчьей шкуре. Комедийный детектив «Я не киллер» с Гленом Пауэллом в главной роли Овца в волчьей шкуре. Комедийный детектив «Я не киллер» с Гленом Пауэллом в главной роли

Как комедия «Я не киллер» взламывает клише фильмов о профессиональных убийцах

СНОБ
Инновации, для которых нужно немного сойти с ума Инновации, для которых нужно немного сойти с ума

Как небольшая фирма начала выпускать лазерное оборудование мирового класса

Монокль
Страстная пятница: чем заняться в этот день неверующему человеку Страстная пятница: чем заняться в этот день неверующему человеку

Чем можно заняться в Страстную пятницу тем, кто далек от религии?

Psychologies
Невеста на вырост: как в Китае похищают девочек, чтобы выдавать их замуж Невеста на вырост: как в Китае похищают девочек, чтобы выдавать их замуж

Что происходит с продажей женщин в Китае и как женщины борются за свободу?

Forbes
Как узнать свою группу крови: какие бывают, совместимость Как узнать свою группу крови: какие бывают, совместимость

Что такое группа крови, как ее узнать и чем важен резус-фактор?

РБК
Не очень милый котик Не очень милый котик

История самого успешного авторского мультфильма и его героя, кота Фрица

Weekend
Точка невозврата: как распознать клиническую депрессию вовремя Точка невозврата: как распознать клиническую депрессию вовремя

Как самостоятельно диагностировать начало депрессии и вовремя принять меры

Psychologies
Чем лабрадор отличается от голден ретривера Чем лабрадор отличается от голден ретривера

Существует ли какая-то существенная разница между лабрадором и голден ретривером

ТехИнсайдер
Открыть в приложении