Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metodichka_lab__rab_spo.doc
Скачиваний:
14
Добавлен:
05.09.2020
Размер:
433.66 Кб
Скачать

Трансляция и компоновка программ

Для преобразования исходной программы в исполняемый модуль необходимо выполнить следующие действия.

  1. Оттранслировать исходную программу. В результате будет создан объектный файл (.OBJ), а также (хотя и не обязательно) файл перекрестных ссылок и файл листинга (.LST).

  2. Скомпоновать полученный объектный файл. При этом будет создан исполняемый файл (.ЕХЕ), а также, возможно, файл карты связей (.MAP) и файл библиотеки (.LIB). Компоновка может соединить несколько объектных файлов в единый исполняемый файл.

  3. Полученный файл типа .ЕХЕ можно преобразовать в .СОМ.

Термин путь означает директорию и файл в применении к файлам и программам; его можно заменять требуемым значением, например, С: или C:\TEMP\.

Borland Turbo Assembler (TASM)

Turbo Assembler позволяет транслировать несколько файлов, каждый со своими собственными опциями, одной командной строкой. В командной строке можно использовать символы замены (* и ?). Для трансляции всех исходных файлов в текущей директории используйте команду TASM *. Для трансляции программ с именами PROG1.ASM, PROG2.ASM, и т.д. введите TASM PROG?. Можно вводить группы имен файлов, разделяя их знаком +. Следующая командная строка транслирует PROG1 и PROG2 с ключом /L и PROG3 с ключом /Z:

TASM /L PROG1 PR0G2+ /Z PROG3

Ключ /L указывает TASM сгенерировать файл .LST, а ключ /Z – вывести на экран все строки исходного кода с ошибками. Ввод команды TCREF без параметров выводит справку по этой программе (ключи и параметры командной строки). Режим Ideal имеет много дополнительных возможностей. Borland предлагает еще две версии ассемблеров, TASMX и TASM32, предназначенные для защищенного режима (protected mode).

Файлы перекрестных ссылок

Файл .XRF используется для создания листингов перекрестных ссылок, меток, символов и переменных программы. Используйте программу TCREF для преобразования его в отсортированный файл перекрестных ссылок:

TCREF <файлl>.XRF <файл2>.КЕР

Компоновка

Командная строка для компоновки программ TASM следующая:

TLINK <объектный_файл>, <исполняемый_файл> [,

<файл_карт>] [, <файл_библиотеки>]

Преобразование объектных файлов в файлы типа .СОМ

Используйте программу TLINK для прямого преобразования объектного файла в файл .СОМ, если исходная программа была написана с учетом требований, предъявляемых к файлам типа .СОМ. Используйте ключ /Т:

TLINK /Т <объектный_файл>, <файл>.СОМ, CON

Опции отладки

Чтобы использовать Turbo Debugger для отладки, используйте ключ /ZI при трансляции и ключ /V – для компоновки, например, TLINK /V имя файла.

За листингами в файлах .LST следуют таблицы сегментов и групп и таблицы символов.

Таблица сегментов и групп

Эта таблица имеет заголовок, подобный следующему:

Name Length Align Combine Class

Name (имя) - это столбец, в котором перечислены имена всех сегментов и групп в алфавитном порядке.

Столбец Length (длина) указывает в шестнадцатеричном виде длины сегментов.

Столбец Align (выравнивание) указывает типы выравнивания сегментов, например, BYTE, WORD или PARA.

Столбец Combine (совмещение) указывает определенные для сегментов типы совмещения, например, STACK для стековых сегментов, NONE, если совмещение не определено, PUBLIC - для внешних определений, или шестнадцатеричный адрес – для определений AT.

Столбец Class (класс) указывает имена классов сегментов, указанные в директивах SEGMENT.

Таблица символов

Эта таблица имеет приблизительно такой заголовок:

Name Type Value Attribute

Столбец Name (имя) перечисляет имена всех определенных в программе элементов в алфавитном порядке.

Столбец Туре (тип) указывает типы элементов, например:

• L NEAR или L FAR – для меток типа near и far, соответственно;

  • N PROC или F PROC – для процедур типа near и far, соответственно;

  • BYTE, WORD, DWORD, FWORD, QWORD или TBYTE – для элементов данных;

  • ALIAS – псевдоним для другого символа;

  • NUMBER – абсолютная метка;

  • OPCODE – подстановка (замена) для операнда инструкции;

  • TEXT – подстановка для текста.

Столбец Value (значение) содержит смещение начала сегмента для имен, меток и процедур в шестнадцатеричной форме.

Столбец Attribute (атрибут) содержит атрибуты символа, включая его сегмент и длину.

Составитель: Лянцев Олег Дмитриевич

Соседние файлы в предмете Системное программное обеспечение