Компилятор

VitaliyRodnenko, 11.11.2020

Компилятор-это специальная программа, которая обрабатывает операторы, написанные на определенном языке программирования, и превращает их в машинный язык или "код", используемый процессором компьютера. Как правило, программист пишет операторы языка на языке, таком как Pascal или C, по одной строке за раз, используя редактор. Созданный файл содержит так называемые исходные операторы. Затем программист запускает соответствующий компилятор языка, указывая имя файла, содержащего исходные операторы.

При выполнении компилятор сначала синтаксически анализирует (или анализирует) все операторы языка один за другим, а затем, на одном или нескольких последовательных этапах или "проходах", строит выходной код, следя за тем, чтобы операторы, ссылающиеся на другие операторы, правильно упоминались в конечном коде. Традиционно выходные данные компиляции называются объектным кодом или иногда объектным модулем . (Обратите внимание, что термин "объект" здесь не связан с объектно-ориентированным программированием.) Объектный код - это машинный код, который процессор может выполнять по одной команде за раз.

Язык программирования Java, язык, используемый в объектно-ориентированном программировании, ввел возможность компиляции вывода (называемого байт-кодом), который может работать на любой платформе компьютерной системы, для которой предусмотрена виртуальная машина Java или интерпретатор байт-кода для преобразования байт-кода в инструкции, которые могут быть выполнены фактическим аппаратным процессором. Используя эту виртуальную машину, байт-код может быть дополнительно перекомпилирован на платформе выполнения компилятором just-in-time.

Традиционно в некоторых операционных системах после компиляции требовался дополнительный шаг - разрешение взаимного расположения инструкций и данных, когда одновременно должно было выполняться более одного объектного модуля и они перекрестно ссылались на последовательности команд или данные друг друга. Этот процесс иногда называли редактированием связей, а выходные данные-модулем загрузки.

Компилятор работает с тем, что иногда называют 3GL и языками более высокого уровня. Ассемблер работает над программами, написанными на ассемблерном языке процессора.

Подписаться на обновления блога

Вам понравился наш блог, хотите следить за обновлениями? Подпишитесь на RSS рассылку или рассылку по электронной почте. Так же вы можете следить за нами в Twitter.

Категории: Python | Комментировать

Комментарии (0)

480×60
480×60