Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛРАССМБЛ№1.doc
Скачиваний:
7
Добавлен:
05.05.2019
Размер:
119.3 Кб
Скачать

Процесс разработки программы

На рисунке 1 приведена общая схема процесса разработки программы на ассембле­ре. Название программы – cikl. На схеме выделено четыре этапа этого процесса. На первом этапе, когда вводится код программы, можно использовать любой текстовый ре­дактор. В Windows таким редактором может быть Блокнот (Notepad). При выборе редактора нужно учитывать, что он не должен вставлять «посторонних» символов (специальных символов форматирования). С этой точки зрения Microsoft Word в качестве основного редактора ассемблерных программ не годится.

Созданный с по­мощью текстового редактора файл должен иметь расширение .asm.

Для выполнения остальных этапов разработки требуются специализированные программные средства из пакета MASM или TASM. Все пакеты ассемблера выполняют практически одну работу, но по-разному, например, маскируют ее с помощью интегрированный среды или объединяют некоторые этапы разработки. Рассмотрим процесс разработки программы на примере работы ассемблера TASM. Поняв суть преобразований исходной программы, выполняемых пакетом TASM, освоить другие пакеты Ассемблера будет на порядок легче.

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

Следующий шаг на пути создания исполняемого модуля — трансляция программы. Для трансляции нужен подготовленный и записанный на диск исходный текст программы.

На этапе трансляции решается несколько задач:

  • перевод команд ассемблера в соответствующие машинные команды;

  • построение таблицы символов;

  • расширение макросов;

  • формирование файла листинга и объектного модуля.

Программа, которая реализует эти задачи, называется ассемблером. Итог рабо­ты ассемблера — два файла: файл объектного модуля и файл листинга.

Объектный модуль включает в себя представление исходной программы в ма­шинных кодах и некоторую другую информацию, необходимую для отладки и ком­поновки его с другими модулями. При использовании пакета TASM получение объектного модуля исходного файла производится программой (ассемблером) tasm.exe. Формат командной строки для запуска tasm.exe следующий:

TASM [ключи] имя_исходного_файла [,имя_объектного_файла] [ ,имя_файла_листинга] [,имя_файла_перекрестных_ссылок]

Помнить формат командной строки tasm.exe необязательно. Получить быструю справку о нем на экране можно, если запустить tasm.exe без параметров. Большинство параметров заключено в квадратные скобки. Это общепринятое соглашение по обозначению необязательных параметров. Из этого следует, что обязательным аргументом командной строки является лишь имя ис­ходного файла. Этот файл должен находиться на диске и обязательно иметь рас­ширение .asm. За именем исходного файла через запятую могут следовать необя­зательные параметры, обозначающие имена объектного файла, файла листинга и файла перекрестных ссылок. Если не задать их, то соответствующие файлы по­просту не будут созданы. Если же их нужно создать, то необходимо учитывать не­которые моменты.

  • Если имена объектного файла, файла листинга и файла перекрестных ссылок должны совпадать с именем исходного файла (наиболее типичный случай), то ужно просто поставить запятые вместо имен этих файлов:

tasm.exe cikl, , ,

В результате будут созданы файлы с одинаковыми именами и разными расширениями, как показано на рис. 1 для второго этапа.

  • Если имена объектного файла, файла листинга и/или файла перекрестных ссылок не должны совпадать с именем исходного файла, то нужно в командной указать имена нужных файлов в соответствующем порядке, к примеру:

tasm.exe cikl , , cikllist ,

В результате на диске будут созданы файлы cikl.obj, cikl.lstlist, cikl.crf

  • Если требуется выборочное создание файлов, то вместо ненужных файлов необходимо подставить параметр nul. Например:

tasm.exe cikl , ,nul

В результате на диске будут созданы файлы cikl.obj, cikl.crf.

Необязательный аргумент [ключи] позволяет задавать режим работы транслятора TASM.

Трансляция программы cikl.asm выполняется командной строкой вида:

TASM.EXE /zi cikl, , ,

О нормальном окончании процесса трансляции можно судить по отсутствию строк с сообщениями об ошибках и предупреждениях.

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

  • команды ассемблера — конструкции, которым соответствуют машинные ко­манды;

  • директивы ассемблера — конструкции, которые не генерируют машинных команды а являются указаниями транслятору на выполнение некоторых действий и служат для задания режима его работы;

  • макрокоманды — конструкции, которые, будучи представлены одной строкой в исходном файле программы, после обработки транслятором генерируют в объектном модуле последовательность команд, директив или макрокоманд ассемблера.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]