Отладчик AFD є дуже простим і зручним у використанні засобом налагодження програм. Він надзвичайно компактний (розмір файлу afd.com порядку 65К), але при цьому надає досить великий спектр послуг і призначений для вирішення широкого кола завдань, включаючи такі:
- Розробка та налагодження програм на мові асемблера;
- вивчення роботи програм і їх модифікація;
- вивчення поточного вмісту оперативної пам'яті, регістрів і т.д.
Отладчик AFD надає в розпорядження користувача два екрани - основний, в якому здійснюються всі операції і візуалізується основна інформація, і альтернативний (прихований), призначений для відображення результатів роботи програми. Основний екран має дві сторінки. Друга сторінка призначена для установки точок переривання в програмі. Переходи з однієї сторінки на іншу здійснюються натисканням функціональної клавіші F5 - Set Break Point. що відображено в меню внизу екрану першої сторінки.
Команди налагоджувача виконуються після натискання клавіші ENTER.
Розглянемо основні команди відладчика:
QUITR> - команда виходу з відладчика і повернення в DOS. При виході з відладчика робочі файли не зберігаються. Опція R робить програму AFD резидентної, при цьому AFD може бути викликана натисканням CTRL-Esc.
MO M | C | A ON | OFF - команда забезпечення настройки екрану. Дозволяє включити альтернативний (прихований) екран для відображення даних, які видаються що виконується програмою. Після виконання команди MO A ON перемикання між основним і альтернативними екранами здійснюється за допомогою клавіші F6. Якщо команда задається з параметром M. використовується монохромний адаптер, параметр С дозволяє використовувати кольоровий адаптер. Якщо задати команду без параметрів, будуть видані діючі установки екрану програми.R> reg = value - команда установки значення регістра. Якщо необхідно встановити всі доступні біти флагового регістра FL. слід дати команду FL = value. наприклад: FL = FE. Тут флагової регістр встановлюється шестнадцатіразрядного значенням. Можна цією ж командою встановлювати окремі біти цього регістра, при цьому слід звертатися до них по іменах. OF, DF, IF, SF, ZF, AF, PF, CF. Наприклад, CF = 1. Щоб задати значення регістра AX потрібно виконати команду AX = 12fd.
BW fspec - команда записи точок зупину в файл, який визначається параметром fspec.
BL fspec - команда завантаження точок зупину з файлу, що визначається параметром fspec.
- fspec визначає ім'я файлу, найменувати відповідно до угод DOS. Для команди L розширенням за замовчуванням є "exe";
- Reg - позначення регістра розміром в байт або слово;
- Value - може приймати значення деякого регістра або байти / слова в шістнадцятковому форматі. Якщо value - "*", то в якості значення береться вміст регістру IP. Десяткове значення записується як% 123. можна використовувати арифметичні вирази, наприклад AX + BX * 3/2. Порядок виконання обчислень строго визначений - зліва-направо;
- String задає список значень або ASCII рядків (рядок укладена в лапки) розділених пробілами або коми.
Призначення функціональних клавіш:
F1 - покрокове виконання програми з входом в процедуру;
F2 - покрокове виконання програми без входу в процедуру;
F3 - повторний запуск програми;
F4 - HELP команд відладчика;
F6 - переключення основного і альтернативного екранів (инициализируется після відповідної установки);
F7, F8, F9, F10 - установка курсору в потрібне поле екрану - up, down, left, right.
Лабораторна робота № 1