Примечание: я удивлен, что об этом раньше не спрашивали, и если это так, я не смог найти его в поиске.
Я был на тоннах веб-сайтов, я прочитал тонны статей и услышал тонны объяснений. Большинство из них были хорошими, но все они были либо широкими, либо слишком сложными, либо просто плохими. Итак, мой вопрос, как работает компилятор?
Если это сложный, широкий вопрос, пожалуйста, скажите мне. Но если нет, пожалуйста, ответьте на вопрос.
Ответы:
Компилятор - это программа, которая переводит исходный код другой программы с языка программирования в исполняемый код.
Исходный код обычно написан на языке программирования высокого уровня (например, Pascal, C, C ++, Java, Perl, C # и т. Д.). Исполняемый код может быть последовательностью машинных инструкций, которые могут выполняться непосредственно процессором, или это может быть промежуточное представление, которое интерпретируется виртуальной машиной (например, байт-код Java).
Короче говоря, компилятор преобразует программу из удобочитаемого формата в машиночитаемый формат.
Относительно того, как работает компилятор, это действительно сложно. На эту тему есть книги и университетские курсы. Я попытаюсь кратко изложить основные этапы процесса, но это будет очень краткий обзор.
Я еще раз подчеркиваю, что это очень краткое описание. Современные компиляторы очень умны, а, следовательно, очень сложны.
источник
Компилятор - это компьютерная программа (или набор инструкций), которая преобразует исходный код, написанный на языке программирования (исходный язык), в другой компьютерный язык (целевой язык, часто имеющий двоичную форму, известную как объектный код). Наиболее распространенная причина желания преобразовать исходный код - создать исполняемую программу.
Компиляторы связывают исходные программы на языках высокого уровня с базовым оборудованием. Компилятор требует:
источник