Ассемблер и программирование для IBM PC



         

ГЛАВА 4. Ассемблирование и выполнение программ - часть 11


ъ Ассемблер преобразует исходную программу в OBJ-файл, а компановщик - OBJ-файл в загрузочный EXE-файл. ъ Внимательно проверяйте запросы и ответы на них для программ (M)ASM, LINK и CREF прежде чем нажать клавишу Return. Будьте особенно внимательны при указании диско вода. ъ Программа CREF создает распечатку перекрестных ссылок. ъ Удаляйте ненужные файлы с вашего диска. Регулярно пользуйтесь программой CHKDSK для проверки свободного места на диске. Кроме того периодически создавайте резервные копии вашей программы, храните резервную дискету и копируйте ее заново для последующего программирования.

ВОПРОСЫ ДЛЯ САМОПРОВЕРКИ ------------------------------------------------------------

Ассемблер для IBM PC. Глава 4 90

4.1. Введите команду MASM и ответьте на запросы для ассемблирования программы по имени TEMPY.ASM с получением файлов LST, OBJ и CRF, полагая, что дискета с программой находится на дисководе B.

4.2. Введите команды для программы TEMPY (из вопроса 4.1) а) для выполнения через отладчик DEBUG, б) для непосредст венного выполнения из DOS.

4.3. Объясните назначение каждого из следующих файлов: а) file.BAK, б) file.ASM, в) file.LST, г) file.CRF, д) file.OBJ, е) file.EXE, ж) file.MAP.

4.4. Напишите две команды для инициализации регистра DS, полагая, что имя сегмента данных - DATSEG.

4.5. Составте ассемблерную программу для:

- пересылки шест. 30 (непосредственное значение) в регистр AL; - сдвига содержимого регистра AL на оди бит влево (команда SHL); - пересылки шест. 18 (непосредственное значение) в регистр BL; - умножения регистра AL на BL (команда MUL BL).

Не забывайте команду RET. В программе нет необходимости определять и инициализировать сегмент данных. Не забы вайте также копировать стандартную часть программы (ос нову программы) и использовать редактор для ее разви тия. Выполните ассемблирование и компановку. Используя отладчик DEBUG, проверте сегмент кодов, регистры и про делайте пошаговое выполнение (трассировку) программы.

4.6. Модифицируйте программу из вопроса 4.5 для:

- определения однобайтовых элементов (директива DB) по имени FLDA, содержащего шест. 28, и по имени FLDB, содержащего шест. 14; - определения двухбайтового элемента (директива DW) по имени FLDC, не имеющего значения; - пересылки содержимого поля FLDA в регистр AL и сдвига на один бит; - умножения содержимого регистра AL на значение в поле FLDB (MUL FLDB); - пересылки результата из регистра AX в поле FLDC.

Для данной программы необходим сегмент данных. Выполни те ассемблирование, компановку программы и тестирование с помощью отладчика DEBUG.

Ассемблер для IBM PC. Глава 5 104




    Содержание  Назад  Вперед