Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Assembler (Уч_пос_Лаб_Ч1).doc
Скачиваний:
0
Добавлен:
03.01.2020
Размер:
1.43 Mб
Скачать

6.3. Задание к работе. Порядок выполнения

1. Произвести ассемблирование и компоновку программы hello.asm с опциями, предполагающими использование отладчика TD. Повторить программу исследования файла hello.exe в режиме TD, следуя рекомендациям параграфа п. 6.2.4 лабораторной работы.

2. В соответствии с вариантом задания (табл. 1.4) произвести ассемблирование и компоновку программных файлов, с опциями, предполагающими получение листинга и отладочной информации для TD. Для обоих файлов составить диаграмму размещения сегментов в памяти по образцу рис. 1.7. Информация о расположении сегментов любой из программ должна согласовываться также с данными таблицы идентификаторов, расположенной в конце листинга ассемблирования, или с данными файла отображения программы в памяти hello.map.

Рис. 1.7. Диаграмма расположения сегментов программы hello.exe в памяти

3. Работа над собственной программой предстоит на следующем практическом занятии, а на этом полезно будет выяснить, какую помощь в этом плане вы можете ожидать от асссемблера. Создайте копии файлов программ п.п. 2 c видоизменёнными названиями, с целью проведения эксперимента по их ассемблированию (получение листинга: tasm/l <file.asm>) с введёнными синтаксическими ошибками (достаточно 5-7). При введении ошибок, в синтаксически правильно составленные программы, можно руководствоваться содержанием п. 6.2.6.

Ошибки вместе с замечаниями на них Turbo Assembler выводит в листинге. Более подробную трактовку о сделанной ошибке можно узнать, обратившись к файлу ошибок ассемблирования Tasm_err.doc [6].

Отчёт по лабораторной работе должен содержать:

  • диаграмму расположения сегментов в заданных для исследования программах;

  • работу над синтаксическими ошибками, проведённую для тех же программ;

  • анализ машинных кодов ассемблерных команд с указанием используемых видов адресации. В анализе необходимо показать непротиворечивость кода, сформированного транслятором, изложенным выше принципам кодирования. Номера команд из сегмента Codeseg, подлежащих анализу, приведены в табл. 1.4. Указанные номера команд идентифицированы цифрами в поле "комментарий" соответствующих файлов. Каждый вариант задания включает анализ 6 команд из двух файлов.

Таблица 1.4

Таблица индивидуальных заданий к работе № 1

Файл

Вариант

1, 7

2, 8

3, 9

4, 10

5, 11

6, 12

7, 14

Mov.asm

4, 5, 6

7, 13, 14

15, 16, 18

15, 16, 18

21, 22, 23

15, 16, 18

Arithmet.asm

6, 9, 13

9, 16, 17

17,19, 20

Logical.asm

6, 7, 10

12, 15, 21

LoopCall.asm

6, 9, 18

6, 9, 18

6, 9, 18

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