Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
зошит_1_с таблицей 2006.doc
Скачиваний:
24
Добавлен:
21.11.2019
Размер:
17 Мб
Скачать
☆

3. Редактор связей для компилятора микроконтроллера семейства мк51

Везде далее под линкером предполагается программа редактора связей. Линкер позволяет пользователю записать программу языка ассемблера, содержащую несколько программных модулей. Линкер учитывает внешние ссылки и выполняет размещение в адресном пространстве. Он способен создавать выходные файлы для всех наиболее применяемых форматов.

Линкер может быть вызван в диалоговом, командном режимах или под управлением из файла. Выходной формат выбирается директивой в исходном файле или в параметрах команды LINK. Полное описание возможностей и методики работы с линкером излагается в руководстве объемом 38 страниц, поэтому для практической работы рассматривается только режим командной строки.

РЕЖИМ КОМАНДНОЙ СТРОКИ.

Линкер может быть вызван в командной строке. Формат такой команды показан ниже с последующей расшифровкой элементов:

Drive:\Path\Link.exe [-q]-c file1[-Innnn]file2[-Innnn]...[-ofile][-Llibfile][-options]

-q Линкер в режиме Quit. В этом случае выдается только сообщение об ошибках на консоль.

-c Требуется для указания, что будет использован режим командной строки, а не управляющего файла. Следом за ключом -с идет список входных файлов, состоящий (для приведенной строки) из файлов fil1 и fil2. За каждым файлом может следовать адрес смещения секций, начинающийся с -I. Если этот адрес отсутствует, то текущая секция является продолжением предыдущей с тем же именем.

-o Используется для указания выходного файла. Этот элемент не обязателен. Если он отсутствует, Линкер создаст выходной файл с тем же именем, что и первый входной, и с расширением, определяемым типом генерируемого формата.

-L Используется для задания библиотек. Максимум может быть указано 50 библиотек.

-options. Определяет дополнительные параметры. Знак минус требуется в начале списка, и в него может входить столько параметров, сколько необходимо (детально это описано в "Параметры Линкера").

ПАРАМЕТРЫ ЛИНКЕРА:

Параметры указываются в диалоговом режиме после имени библиотечных файлов. Эти параметры могут быть заданы и в режиме управления из файла и в командной моде. Когда указано несколько конкурирующих параметров, последний параметр отменяет действие предыдущего.

D Создать дисковый файл, содержащий все ошибки линкирования, символьную таблицу глобальных переменных и карту памяти (MAP) загрузки. Файл имеет то же имя, что и выходной файл, но с расширением map.

S Создать символьный файл для процесса отладки. Этот файл содержит все глобальные символы и их величины. Каждый символ имеет в длину 32 буквы.

A Создать символьный файл, но с символами в 10 букв. Он используется для совместимости с линкером 2500 A.D. версии 3.0.

M Создать символьный файл в целях отладки в формате Microtek.. Он содержит все символы, как глобальные, так и локальные. Для того чтобы этот формат мог быть создан, в исходном файле должна присутствовать директива SYMBOLS ON.

Z Создать символьный файл в целях отладки в формате ZAX. Этот файл содержит и локальные и глобальные переменные. Для того чтобы этот формат мог быть создан, в исходном файле должна присутствовать директива SYMBOLS ON.

X Создать выполняемый выходной файл.

H Создать шестнадцатеричный файл формата Intel.

E Создать шестнадцатеричный файл расширенного формата Intel.

T Создать шестнадцатеричный файл формата Tektronix.

1 Создать выходной файл формата S19 фирмы Motorola.

2 Создать выходной файл формата S28 фирмы Motorola.

3 Создать выходной файл формата S37 фирмы Motorola.

ПРИМЕР. Имеется объектный файл first.obj, необходимо выполнить процесс линкирования с созданием выполняемого (в двоичном коде) выходного файла.

Для этого необходимо выполнить следующую команду:

Drive:\Path\link.exe -c first.obj -x

При этом будет создан выходной файл с расширением «tsk» (в нашем примере first.tsk), код программы будет расположен с адреса 0000H (по умолчанию).