Руководство по Soft-ICE (DOS) - 12Delphi , Программа и Интерфейс , Руководство по Soft-ICEРуководство по Soft-ICE (DOS) - 12
I3HERE I3HERE -- Перенаправить прерывание 3 на Soft-ICE Синтаксис:
Комментарии: Команда I3HERE позволяет вам указать, что любое прерывание 3 вызовет окно Soft-ICE. Эта возможность полезна для остановки вашей программы в определенных местах. Чтобы использовать эту возможность, поместите INT 3 в ваш код в месте, где вы хотите остановиться. Когда произойдет INT 3, оно вызовет окно Soft-ICE. В этой точке, вы можете использовать команду R IP, чтобы изменить ваш указатель команд на команду, следующую после INT 3, затем вы можете продолжить отладку. Если параметры не указаны, отображается текущее состояние I3HERE. Значение по умолчанию - режим I3HERE OFF. Пример:
Эта команда включает режим I3HERE. Любой INT 3, сгенерированный после этого, вызовет окно Soft-ICE. 5.5 Сервисные Команды Команды:
A -- Транслировать код A A -- Транслировать код Синтаксис:
Комментарии: Транслятор Soft-ICE позволяет вам транслировать команды непосредственно в памяти. Транслятор поддерживает базисную систему команд 8086 с расширениями для реального режима 80186 и 80286. Инструкции математического сопроцессора и специфические для 80386 команды, регистры и режимы адресации НЕ могут быть оттранслированы. Команда A вызывает интерактивный транслятор Soft-ICE. В начале каждой транслируемой строки отображается ее адрес. После того как команда ассемблера набрана и нажат ВВОД, команды транслируются в память по указанному адресу. Команды должны вводиться в стандартном формате Intel. Для выхода из режима транслятора нажмите ВВОД в пустой строке. Если адресный интервал, в который вы транслируете команды, видим в окне кода, команды будут изменятся интерактивно, по мере трансляции. Транслятор Soft-ICE'а поддерживает стандартную мнемонику семейства 8086, однако имеются некоторые специальные добавления:
Пример:
Эта команда выводит приглашение для ввода команд ассемблера, затем транслирует их, начиная со смещения 1234H в текущий сегмент кода. Нажмите ВВОД в приглашении с адресом после ввода последней команды. S S -- Поиск данных Синтаксис:
список-данных -- список байтов или строк в кавычках, разделенных
запятыми или пробелами. Строка в кавычках
может начинаться с одинарной или
двойной кавычки. Комментарии: Команда S ищет в памяти последовательности байтов или символов, совпадающих со списком данных. Поиск начинается с указанного адреса и до смещения, равного указанной длине. Адреса каждого найденного в диапазоне совпадения выводятся на экран. Пример:
Эта команда ищет строку 'Привет' сопровождаемую байтами 12H и 34H, начиная со смещения SI+10 в текущем сегменте данных и заканчивая адресом через CX байт от начала. F F -- Заполнить память данными Синтаксис:
список-данных -- список байтов или строк в кавычках, разделенных
запятыми или пробелами. Строка в кавычках
может начинаться с одинарной или
двойной кавычки. Комментарии: Команда F заполняет память последовательностью байтов или символов, определенных в списке-данных. Память заполняется, начиная с указанного адреса и до смещения, равного указанной длине, повторяя список-данных в случае необходимости. Пример:
Эта команда заполняет память, начиная с 8000:0 на длину 100H байтов строкой 'Тест'. Строка 'Тест' повторяется, пока не достигнуто необходимое смещение. М M -- Переместить данные Синтаксис:
длина -- длина в байтах Комментарии: Команда M перемещает указанное число байтов из адреса-начала в памяти в конечный-адрес в памяти. Пример:
Эта команда перемещает 200H байтов из ячейки памяти 1000:0 в ячейку памяти 2000:0. C C -- Сравнить два блока данных Синтаксис:
длина -- длина в байтах Комментарии: Команда C сравнивает блок памяти, определенный адресом1 и длиной с блоком памяти определенным адресом2 и длиной. Когда байт из первого блока данных не соответствует байту из второго блока данных, оба байта выводятся на экран вместе с их адресами. Пример:
Эта команда сравнивает 10H байтов, начинающихся с ячейки памяти 5000:100 с 10H байтами, начинающимися с ячейки памяти 6000:100. 5.6 Специализированные Отладочные Команды Команды:
SHOW -- Выводит команды из буфера истории исполнения SHOW SHOW -- Выводит команды из буфера истории исполнения Синтаксис:
B -- Указывает команде SHOW начать вывод с самой старой команды в буфере обратной трассировки. Комментарии: Команда SHOW отображает команды из буфера истории обратной трассировки. Если для команд доступен исходный текст, то дисплей находится в смешанном режиме, в противном случае отображается только код. SHOW позволяет просматривать буфер обратной трассировки при помощи клавиш вверх, вниз, PageUp и PaqeDn. Для выхода из SHOW нужно нажать клавишу Esc. Адресу каждой команды предшествует номер входа в буфер. Этот номер показывает, как глубоко в буфере находится команда. Чем больше номер, тем глубже вы в буфере. Обратите внимание: До вызова команды SHOW, команды должны регистрироваться при помощи диапазона обратной трассировки. См. главу 9 для подробной информации о диапазонах. Подсказки: Часто полезно иметь видимое окно кода с фактическим кодом области, отображаемой из буфера обратной трассировки. При сравнении фактического исполнения команд с кодом, отображаемыми переходами и обращениями обычно возникает меньше путаницы. Использование SHOW вместе с командой TRACE позволит вам рассматривать команды в буфере обратной трассировки с двух различных точек зрения. Пример:
Этот пример выведет на экран команды из буфера обратной трассировки, начиная с 40-ой инструкции от конца буфера. TRACE TRACE -- Включает режим эмуляции пошагового исполнения Руководство по Soft-ICE для DOS - это документация, описывающая функциональность и использование различных команд для отладки программ на основе системы 80x86. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Руководство по Soft-ICE ::
|
||||||||||||||||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |