Tlink exasm2.obj

 

Выполните ввод команды DOS (Enter). В вашем каталоге появится необходимый EXE-файл, а также MAP-файл. Просмотрите MAP-файл, нажав клавишу F3 и запишите текст файла в отчет.

Получение COM-файла.

2.1. Для получения COM-файла необходимо создать в текстовом редакторе NORTON программу в другом формате. Для этого нажмите комбинацию клавиш Shift F4 и введите имя программы xcom1.asm. Далее запишите текст программы в следующей форме:

 

.286

TITLE XCOM1 (COM) для пересылки и сложения

CODESG SEGMENT PARA 'Code'

ASSUME CS:CODESG,DS:CODESG,SS:CODESG,ES:CODESG

ORG 100H ;Начало в конце PSP

BEGIN: JMP MAIN ;Обход через данные

;-------------------------------------------------------

FLDA DW 250 ;Определение данных

FLDB DW 125

FLDC DW ?

;--------------------------------------------------------

MAIN PROC NEAR

MOV AX,FLDA ;Переслать 0250 в АХ

ADD AX,FLDB ;Прибавить 0125 к АХ

MOV FLDC,AX ;Записать сумму в FLDC

RET ;Вернуться в DOS

MAIN ENDP

CODESG ENDS

END BEGIN

 

Оператор ASSUME указывает ассемблеру на необходимость установить относительные адреса с начала сегмента кодов. Регистр CS также содержит этот адрес, являющийся к тому же адресом префикса программного сегмента (PSP). Директива ORG служит для резервирования 100Н байт от начального адреса под PSP.

ORG 100H устанавливает относительный адрес для начала выполнения программы. Программный загрузчик устанавливает этот адрес в командном указателе.

Если опущен ORG 100H, то на данные в префиксе программного сегмента будут установлены неправильные ссылки с непредсказуемым результатом при выполнении.

Команда JMP служит для обхода данных, определенных в программе. Запишите программу на диск и выйдите из редактора нажав комбинацию клавиш Shift F10.

2.2. Создайте OBJ-файл и LST-файл для программы xcom1.asm аналогично пункту 1.3. Просмотрите LST-файл с помощью текстового редактора LEXICON и запишите листинг в отчет.

2.3. Создайте COM-файл и MAP-файл. Для этого в командной строке DOS введите команду аналогично пункту 1.5. с опцией t (создание COM-файла):

 

tlink xcom1.obj /t

 

Без опции t управляющая программа tlink создаст EXE-файл.

Попытка выполнить EXE-модуль программы, написанной для COM-формата, успеха не имеет.

Нажав клавишу F3 просмотрите MAP-файл и его текст запишите в отчет.

 

СОДЕРЖАНИЕ ОТЧЕТА:

1. Листинги программ.

2. Тексты MAP-файлов.

КОНТРОЛЬНЫЕ ВОПРОСЫ:

1. Каков максимальный размер COM-файла?

2. Какие сегменты можно определить в программе, которая будет преобразована в COM-файл?

3. Выполните трассировку программы xcom1.com с помощью отладчика DEBUG.

ОТВЕТЫ:

1. 64 К

2. Сегмент данных, сегмент кодов.

 

Л а б о р а т о р н а я р а б о т а N 5