2.3. Отладчик

Запуск отладчика производится с помощью системной команды MS DOS DEBUG.

После ввода команды DEBUG на экране появляется приглашение в виде дефиса. Если ввести символ ‘?’, то появится список допустимых опций. Рассмотрим следующие из них:

Дамп памяти. Для просмотра содержимого ячейки памяти следует ввести команду

D S:M <ENTER>

где S – адрес сегмента, деленный на 16, а M – смещение. Например, серийный номер компьютера находится в памяти ROM, по адресу FE000h. Значит, чтобы его увидеть, следует ввести

D FE00:0 <ENTER>

Выход. Для окончания работы с отладчиком следует ввести

Q <ENTER>

Ввод данных. Данные в оперативную память вводятся с помощью команды

E S:M XX XX … XX <ENTER>

где S – адрес сегмента, деленный на 16 (S может быть именем сегментного регистра), а M – смещение, XX XX … XX – данные в шестнадцатеричной форме. Например,

E CS:100 CB 20 <ENTER>

вводит команду, состоящую из единственного оператора int 20h (возврат в Dos).

Ввод команд на Ассемблере. Производится с помощью нажатия клавиши A, например,

A CS:100 int 20 <ENTER>

вводит команду int 20.

Трассировка. Производится нажатием клавиши T. Выполняется одна команда, которая находится по адресу CS:IP. Выводится содержимое регистров. Вывод содержимого регистров можно сделать также нажатием клавиши R.

Реассемблирование. Если нажать клавишу U, или ввести команду

U диапазон <ENTER>

то на экран будут выведены машинные команды на языке Ассемблер, соответствующие кодам, находящимся в данном диапазоне.

Отладка программы производится вводом команды

DEBUG имя <ENTER>

Например, чтобы отладить созданную в примере 3 программу ADD.COM, надо ввести команду

DEBUG ADD.COM <ENTER>

(Далее на приглашение обычно вводится команда трассировки T).