Отладчик Periscope
Отладчик Periscopе является удобным средством отладки программно-
го кода. Он полностью написан на языке ассемблера поэтому обладает
большим быстродействием.
В нем имеется возможность использования при отладке символических
имен (имен из программы ) вместо адресов. Для некоторых компиляторов
выводятся также номера строк исходного кода и сам исходный код.
Для обеспечения надежной работы при отладке программ Periscope
обладает средствами защиты от сбоев:
- На входе сохраняются вектора BIOS, используемые Periscope. С
целью обеспечить надежность Periscope затем изменяет
эти прерывания, устанавливая значения, записанные в
ПЗУ. На выходе из Periscope программные вектора восста-
навливаются.
- Periscope использует прерывания BIOS для всех функций, кроме
функций, связанных с файлами, поэтому Periscope не мо-
жет вызвать DOS, если DOS уже активна. Использование
BIOS позволяет вам трассировать DOS.
- Переключатель прерывания действует даже в том случае, когда
прерывания заблокированы. Активные прерывания от тайме-
ра и клавиатуры обнаруживаются и обрабатываются Peris-
cope. При необходимости клавиатура также сбрасывается.
- Если это возможно, Periscope восстанавливает состояние сис-
темы так, чтобы это не повлияло на прерванную програм-
му. Исходный буфер клавиатуры и управляющие буфера CRT
сохраняются на входе в Periscope и восстанавливаются на
выходе.
При работе с Periscope предоставляются следующие возможности:
- Определять окна для информации о Данных, Регистрах, Стеке
и(или) результате Дисассемблирования. Вы в любой момент
можете выбрать размер окон и содержание отображаемой
информации. Можно определить до 4 окон Данных!
- Отобразить память в форматах ASCII, байта, целого, целого со
знаком, слова, двойного слова, короткого вещественного,
длинного вещественного и ASCIIZ.
- Отобразить блок памяти по отдельным полям записи. Например,
можно отобразить Префикс Программного Сегмента так, что
каждое поле будет помечено и будет расположено на от-
дельной строке. Вы можете определить записи так, как
это Вам нужно.
- Просмотреть текстовый файл из Periscope.
- В интерактивном режиме добавлять и изменять определения
имен.
В лабораторной работе были использованы следующие команды Periscope:
\D
Синтаксис: D [<диапазон>]
Использование: Отображает блок памяти в текущем формате
вывода.
Пример: 'D 100'
отображает память, начиная со смещения 100H.
\DA
Синтаксис: DA [<диапазон>]
Использование: Отображает блок памяти в ASCII.
Пример: 'DA FILE' отображает имя FILE
в ASCII.
\J
Синтаксис: J
Использование: Выполняет до следующей команды на том же
уровне.
Пример: 'J' выполняет текущую команду и возвращает управление
следующей команде.
\JN
Синтаксис: JN
Использование: Переход к следующей команде без замены изобра-
жения на экране.
Пример: 'JN' выполняет текущую команду без замены изображения
на экране.
\T
Синтаксис: T [<число>]
Использование: Трассирует выполнение текущей программы по
одной команде.
Пример: 'T 5' трассирует 5 команд.