Cтраница 3
Объектный модуль составляется компилятором в кодах команд машины. [31]
Объектный модуль формируется в виде 80-байтовых записей. Записи текста программы, справочника внешних символов и справочника перемещений имеют жесткие форматы. [32]
Объектный модуль не может быть исполнен до тех пор, пока программные секции в нем не будут увязаны. Остальные программные секции получают адреса относительно начального адреса. Адреса первых байтов объединяемых программных секций при этом выравниваются по границе двойного слова. Одновременно с объединением текстов программных секций объединяются справочники внешних имен и справочники перемещений, разрешая все межсекционные ссылки, представленные адресными константами. Процедура размещения ссылок сводится к вычислению значений адресных констант этих ссылок с учетом перемещений программных секций внутри собираемого загрузочного модуля. [33]
Объектный модуль обрабатывается редактором связей. Редактор связи осуществляет стыковку программных блоков. [34]
Объектный модуль формируется в виде 80-байтовых записей. Записи текста программы, справочника внешних символов и справочника перемещений имеют жесткие форматы. [35]
Объектный модуль не может быть исполнен до тех пор, пока программные секции в нем не будут увязаны. Остальные программные секции получают адреса относительно начального адреса. Адреса первых байтов объединяемых программных секций при этом выравниваются по границе двойного слова. Одновременно с объединением текстов программных секций объединяются справочники внешних имен и справочники перемещений, разрешая все межсекционные ссылки, представленные адресными константами. Процедура размещения ссылок сводится к вычислению значений адресных констант этих ссылок с учетом перемещений программных секций внутри собираемого загрузочного модуля. Если при этом были обнаружены ссылки к внешним именам, которых не оказалось в справочниках, редактор организует их поиск в библиотеках. Если никаких указаний относительно структуры загрузочного модуля редактору не сообщается, то он формирует загрузочный модуль простой структуры, загружаемый целиком для исполнения в оперативную память. [36]
Объектный модуль обрабатывается редактором связей. Редактор связей осуществляет стыковку программных блоков. [37]
Объектный модуль - программа, составленная компилятором в кодах команд машины. [38]
Объектный модуль формируется в виде 80-байтовых записей. Записи текста программы, справочника внешних символов и справочника перемещений имеют жесткие форматы. [39]
Объектный модуль не может быть исполнен до тех пор, пока программные секции в нем не будут увязаны. Остальные программные секции получают адреса относительно начального адреса. Адреса первых байтов объединяемых программных секций при этом выравниваются по границе двойного слова. Одновременно с объединением текстов программных секций объединяются справочники внешних имен и справочники перемещений, разрешая все межсекционные ссылки, представленные адресными константами. Процедура размещения ссылок сводится к вычислению значений адресных констант этих ссылок с учетом перемещений программных секций внутри собираемого загрузочного модуля. [40]
Объектный модуль может быть набит на перфокарты как объектная колода или может быть записан в виде набора данных как часть библиотеки программ. После завершения работы компилятора выдается распеча. Эта распечатка обычно выявляет любые ошибки кодирования, а для некоторых компиляторов содержит предупреждения, относящиеся к ошибочным условиям, которые могут возникнуть в процессе выполнения объектной программы. [41]
Объектные модули представляются независимо от языка программирования в некотором промежуточном, общем для всех трансляторов формате. В объектном модуле обращения к подпрограммам заменяются на так называемые адресные ссылки, неопределенные при трансляции, поэтому объектные модули еще не являются готовой к исполнению программой и требуют дополнительной обработки, называемой редактированием. [42]
Объектные модули проходят еще один этап - этап редактирования, на котором они обрабатываются программой РЕДАКТОР. После редактирования получаются программные фазы, готовые к выполнению. Программная фаза ( абсолютный модуль) - это программный объект, не подлежащий дроблению при вызове в основную память для выполнения. [43]
Объектный модуль может рассматриваться РЕДАКТОРОМ либо как неделимая единица обработки, либо как совокупность более мелких частей, называемых программными секциями. Программные секции, входящие в один объектный модуль, обрабатываются РЕДАКТОРОМ независимо друг от друга и могут быть помещены в различные программные фазы. Разделение объектного модуля на программные секции осуществляет программист на исходном языке, и он же указывает РЕДАКТОРУ, в какую программную фазу должна быть включена та или иная программная секция. Например, из объектного модуля, который состоит из трех программных секций С 1, С 2, С 3, можно построить программу, состоящую из двух фаз А и В В фазу А могут быть включены С 1 и С 3, а программная секция С 2 этого же модуля может образовывать фазу В. [44]
Объектные модули могут быть записаны на SYSLNK трансляторами непосредственно после получения их в результате трансляции, либо программой УПРАВЛЕНИЕ ЗАДАНИЯМИ, которая переписывает их на SYSLNK. Управляющие операторы для РЕДАКТОРА помещаются на SYSLNK программой УПРАВЛЕНИЕ ЗАДАНИЯМИ. [45]