Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Assembler 01.doc
Скачиваний:
19
Добавлен:
09.11.2019
Размер:
727.04 Кб
Скачать

2. Ассемблирование программы.

2.1. Войти в свой каталог на диске.

2.2. Записать в каталог файл exasm1.asm.

2.3. Выполнить ассемблирование исходной программы exasm1.asm с помощью ассемблера tasm.exe. Для этого в командной строке DOS необходимо ввести следующую команду:

tasm exasm1.asm,exasm1.obj,exasm.lst,exasm.crf

В этой командной строке указывается вызов ассемблера tasm, имя программы, которую требуется ассемблировать exasm1.asm, требования получения OBJ-файла, LST-файла и CRF-файла.

При выполнении ассемблирования программа tasm выдает коды ошибок, пояснения к ним и номера строк в исходной программе где имеется ошибка. Для просмотра данного сообщения необходимо отключить панели NORTON нажатием клавиш Ctrl O. В случае отсутствия ошибок ассемблер должен выдать сообщение:

Eror messages : None

Warning messages : None

Для восстановления панелей NORTON необходимо выполнить повторное нажатие этих клавиш (Ctrl O).

2.4. После выполнения командной строки DOS просмотреть полученный листинг программы (LST-файл) с помощью текстового редактора LEXICON. Для этого необходимо установить курсор в панели NORTON на файл exasm1.lst и нажать клавиши Alt F4. Записать листинг в отчет.

3. Компоновка программы.

3.1. Если в результате ассемблирования не обнаружено ошибок, то следующий шаг - компоновка объектного модуля. Файл exasm1.obj содержит только машинный код в шестнадцатиричной форме. Так как программа может загружаться почти в любое место памяти для выполнения, то ассемблер может не определить все машинные адреса. Кроме того, могут использоваться другие (под)программы для объединения с основной. Назначением программы tlink.exe является завершение определения адресных ссылок и объединение (если требуется) нескольких программ. Для компоновки ассемблированной программы в командной строке DOS введите следующую команду:

tlink exasm1.obj,exasm1.exe,exasm1.map

В этой командной строке указывается вызов компоновщика tlink, имя программы, которую требуется компоновать, требование получения исполнимого ЕХЕ-файла и требование получения map-файла, который содержит таблицу имен и размеров сегментов, а также ошибки, которые обнаружит программа tlink.exe.

3.2. Для вывода на экран таблицы имен и размеров сегментов необходимо в командной строке DOS ввести следующую команду:

tlink exasm1.obj,,con exasm1.map

CON означает что файл exasm1.map необходимо вывести на экран, а не на диск. Для просмотра файла exasm1.map необходимо отключить панели NORTON. На данном этапе единственной возможной ошибкой может быть указание неправильных имен файлов. Исправить это можно только перезапуском программы tlink.

4. Выполнение программы.

4.1. Для выполнения программы необходимо в панели NORTON установить курсор на файле exasm1.exe и нажать клавишу Enter. После этого программа пользователя выполнена.

4.2. Так как наша программа не вырабатывает видимых результатов, ее можно выполнить трассировкой под отладчиком DEBUG. Для этого необходимо ввести в командной строке DOS:

debug exasm1.exe

В результате DOS загрузит программу DEBUG, которая, в свою очередь, загрузит требуемый ЕХЕ-модуль. После этого отладчик выдаст дефис (-) в качестве приглашения.

4.3. Для просмотра сегмента стека введите:

D SS:0

Эту область легко узнать по 12-кратному дублированию константы STACKSEG.

4.4. Для просмотра сегмента кода введите:

D CS:0

Сравните машинный код с листингом ассемблера. Непосредственные операнды, приведенные в листинге ассемблирования как 0123 и 0025, в памяти представлены в виде 2301 и 2500 соответственно. В данном случае листинг ассемблирования не вполне соответствует машинному коду. Все двухбайтовые адреса (слова) и непосредственные операнды в машинном коде хранятся в обратном порядке.

4.5. Введите R для просмотра содержимого регистров.

4.6. Выполните программу с помощью команды Т (трассировка). В процессе пошагового выполнения программы обратите внимание на содержимое регистров.

4.7. Когда вы дойдете до команды RET, введите Q (Quit - выход) для завершения работы отладчика.

4.8. Используя команду DOS DIR проверьте наличие ваших файлов на диске. Для этого в командную строку DOS введите команду:

dir exasm1.*

В результате на экране появятся следующие имена файлов:

exasm1.asm

exasm1.obj

exasm1.lst

exasm1.crf

exasm1.map

exasm1.exe

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