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


          

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


Ассемблер для IBM PC. Глава 6 125
ъ Директива ORG 100H устанавливает относительный адрес для начала выполнения программы. Программный загрузчик использует этот адрес для командного указателя. ъ Команда JMP используется для обхода данных, определен ных в программе.
Ниже показаны шаги для обработки и выполнения этой программы:
MASM [ответы на запросы обычные] LINK [ответы на запросы обычные] EXE2BIN B:EXCOM1,B:EXCOM1.COM DEL B:EXCOM1.OBJ,B:EXCOM1.EXE (удаление OBJ и EXE-файлов)
Размеры EXE- и COM-программ - 788 и 20 байт соответствен но. Учитывая такую эффективность COM-файлов, рекомендуется все небольшие программы создавать для COM-формата. Для трассировки выполнения программы от начала (но не включая) команды RET введите DEBUG B:EXCOM1.COM. Некоторые программисты кодируют элементы данных после команд так, что первая команда JMP не требуется. Кодирование элементов данных перед командами позволяет ускорить процесс ассемблирования и является методикой, рекомендуемой в руководстве по ассемблеру.
------------------------------------------------------------ ------------------------------------------------------------ Рис. 6.1. Пример COM-программы.
СТЕК ДЛЯ COM-ПРОГРАММЫ ------------------------------------------------------------
Для COM-файла DOS автоматически определяет стек и устанав ливает oдинаковый общий сегментный адрес во всех четырех сегментных pегистрах. Если для программы размер сегмента в 64К является достаточным, то DOS устанавливает в регистре SP адрес конца cегмента - шест.FFFE. Это будет верх стека. Если 64К байтовый сегмент не имеет достаточно места для стека, то DOS устанавливает стек в конце памяти. В обоих случаях DOS записывает затем в стек нулевое слово. Возможность использования стека зависит от размера про граммы и ограниченности памяти. С помощью команды DIR можно определить pазмер файла и вычислить необходимое пространство для стека. Все небольшие программы в этой книге в основном расчитаны на COM-формат.
ОСОБЕННОСТЬ ОТЛАДКИ ------------------------------------------------------------

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