Код объекта
Выполнение программы |
---|
Общие понятия |
Типы кода |
Стратегии составления |
Известное время выполнения |
|
Известные компиляторы и наборы инструментов |
|
В технике вычислительной объектный код или объектный модуль является продуктом ассемблера или компилятора . [1]
В общем смысле объектный код — это последовательность операторов или инструкций на компьютерном языке. [2] обычно это язык машинного кода (т. е. двоичный ) или промежуточный язык, такой как язык передачи регистров (RTL). Этот термин указывает на то, что код является целью или результатом процесса компиляции, при этом в некоторых ранних источниках исходный код называется «предметной программой».
Подробности
[ редактировать ]Объектные файлы, в свою очередь, могут быть связаны для формирования исполняемого файла или файла библиотеки . Для использования объектный код должен быть помещен в исполняемый файл, файл библиотеки или объектный файл.
Объектный код — это часть машинного кода, которая еще не скомпонована в полную программу. Это машинный код одной конкретной библиотеки или модуля, который будет составлять законченный продукт. Он также может содержать заполнители или смещения, отсутствующие в машинном коде завершенной программы, которые компоновщик будет использовать для соединения всего вместе. В то время как машинный код представляет собой двоичный код, который может выполняться непосредственно процессором, в объектном коде переходы и межмодульные ссылки частично параметризованы, чтобы компоновщик мог их заполнить. Предполагается, что объектный файл начинается в определенном месте в памяти. часто ноль. Он содержит информацию об инструкциях, которые обращаются к памяти, чтобы компоновщик мог перемещать код при объединении нескольких объектных файлов в одну программу.
Ассемблер в машинный код (объектный код используется для преобразования ассемблерного кода ). Компоновщик связывает несколько объектных (и библиотечных) файлов для создания исполняемого файла. Ассемблеры (и некоторые компиляторы) также могут выполнять ассемблирование непосредственно в машинный код для создания исполняемых файлов без промежуточного этапа объекта. [3]
Ссылки
[ редактировать ]- ^ «Компилятор» . ТехТаржет . Проверено 1 сентября 2011 г.
Традиционно выходные данные компиляции называются объектным кодом или иногда объектным модулем.
- ^ Ахо, Альфред В .; Сетхи, Рави ; Уллман, Джеффри К. (1986). «10 Оптимизация кода» . Составители: принципы, методы и инструменты . Информатика. Марк С. Далтон. п. 704 . ISBN 0-201-10194-7 .
- ^ Фишер, Чарльз Н. «Что производят компиляторы?» (PDF) . Университет Висконсина в Мэдисоне . Проверено 2 апреля 2024 г.