Главная

Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Nv up di ng nz ac pe nc - pleicy


Debug.exe завершит выполнение подкоманды r и выведет приглашение debug. Для просмотра изменений воспользуйтесь командой r или rf. Программа Debug.exe выводит следующие сведения:

NV UP EI PL NZ AC PE CY - _

Нажмите клавишу ENTER для возврата к приглашению программы debug.

Debug: s (search)

Поиск в области памяти по шаблону из одного или нескольких байт.

Синтаксис

s диапазон список

Параметры

диапазон

Обязательный параметр. Задает начальный и конечный адреса области памяти, в которой будет производиться поиск.

список

Обязательный параметр. Задание шаблона из одного или нескольких байт или символьной строки для поиска.

?

Вывод списка подкоманд debug.

Примечания

  • Задание правильных записей диапазона

Параметр диапазон используется в подкомандах debug для задания диапазона памяти. Параметр диапазон можно задать в одном из следующих форматов: начальный адрес и конечный адрес или начальный адрес и длина (обозначаемая l) диапазона. Например, оба следующих выражения задают диапазон из 16 байтов, начинающийся с адреса CS:100:

Cs:100 10f

Cs:100 l 10

  • Использование параметра список

Если используется параметр список, отделяйте значение каждого байта пробелом или запятой, а строки заключайте в кавычки (т. е. "строка"). Если список содержит несколько значений, выводится только первый адрес, в котором встречается данное значение. Если список содержит только одно значение, выводятся все адреса из указанного диапазона, в которых встречается данное значение.

Примеры

Чтобы найти все адреса в диапазоне от CS:100 до CS:110, содержащие значение 41, введите следующую команду:

Scs:100 110 41

Результаты программы Debug.exe будут выведены в следующем формате:

04BA:0104
04BA:010D
-

Чтобы найти строку «Ph» в диапазоне от CS:100 до CS:1A0, введите следующую команду:

scs:100 1a0 "Ph"

Debug: t (trace)

Выполнение одной инструкции с выводом содержимого регистров, флагов состояния и декодированной формы выполняемой инструкции. При запуске подкоманды t без параметров выполнение начинается с адреса, указанного в регистрах CS:IP программы.

Синтаксис

t [=адрес] [число]

Параметры

адрес

Задание адреса, с которого Debug.exe начнет выполнение инструкций.

число

Указывает число инструкций для выполнения. Указанное значение должно быть шестнадцатеричным числом. По умолчанию значение равно 1.

?

Вывод списка подкоманд debug.

Примечания

  • Задание правильных записей адреса

Адрес состоит из двух частей: первая содержит буквенное обозначение сегментного регистра или адрес сегмента из четырех цифр, а вторая содержит значение смещения. Адрес сегмента или сегментный регистр могут быть пропущены. По умолчанию для подкоманд a, g, l, t, u и w команды debug адрес сегмента содержится в регистре CS. Для других подкоманд по умолчанию используется сегмент DS. Все числовые значения при этом представлены в шестнадцатеричном формате. Между именем сегмента и значением смещения следует вставлять двоеточие. Следующие адреса являются допустимыми:

CS:0100

BA:0100

  • Трассировка инструкций, записанных в ПЗУ

Подкоманда t использует аппаратный режим трассировки микропроцессоров 8086 и 8088. Следовательно, также можно трассировать инструкции, хранимые в ПЗУ.

Примеры

Если текущая позиция указателя кода является 04BA:011A, Debug.exe выведет следующие сведения:

AX=0E00 BX=00FF CX=0007 DX=01FF SP=039D BP=0000 SI=005C DI=0000
DS=04BA ES=04BA SS=04BA CS=O4BA IP=011A NV UP DI NG NZ AC PE NC
04BA:011A CD21 INT 21

Debug: u (unassemble)

Деассемблирование байтов и просмотр соответствующего исходного кода, включая адреса и двоичные значения. Деассемблированный код выводится в формате, похожем на распечатку ассемблерного файла. Выполненная без параметров подкоманда u деассемблирует 20h байт (значение по умолчанию), начиная с первого адреса после адреса, использованного в предыдущей подкоманде u.

Синтаксис

u [диапазон]

Параметры

диапазон

Задание начального и конечного адреса или начального адреса и длины участка двоичного кода, который требуется деассемблировать.

?

Вывод списка подкоманд debug.

Примечания

  • Задание правильных записей диапазона

Параметр диапазон используется в подкомандах debug для задания диапазона памяти. Параметр диапазон можно задать в одном из следующих форматов: начальный адрес и конечный адрес или начальный адрес и длина (обозначаемая l) диапазона. Например, оба следующих выражения задают диапазон из 16 байтов, начинающийся с адреса CS:100:

Cs:100 10f

Cs:100 l 10

Примеры

Чтобы деассемблировать 16 (10h) байт, начиная с адреса 04BA:0100, введите следующую команду:

U04ba:100l10

Результаты программы Debug.exe выводятся в следующем формате:

04BA:0100 206472 AND [SI+72],AH
04BA:0103 69 DB 69
04BA:0104 7665 JBE 016B
04BA:0106 207370 AND [BP+DI+70],DH
04BA:0109 65 DB 65
04BA:010A 63 DB 63
04BA:010B 69 DB 69
04BA:010C 66 DB 66
04BA:010D 69 DB 69
04BA:010E 63 DB 63
04BA:010F 61 DB 61

Чтобы просмотреть сведения только об адресах с 04BA:0100 по 04BA:0108, введите следующую команду:

U04ba:0100 0108

Программа Debug.exe выводит следующие сведения:

04BA:0100 206472 AND [SI+72],AH
04BA:0103 69 DB 69
04BA:0104 7665 JBE 016B
04BA:0106 207370 AND [BP+DI+70],DH

Debug: w (write)

Запись файла или определенных секторов на диск. При запуске подкоманды w без параметров запись начинается с адреса CS:100.

Синтаксис

w [адрес]

w [адрес] [диск] [первый_сектор] [число]

Параметры

адрес

Задание начального адреса файла или части файла, которые требуется записать на диск.

диск

Задание дисковода, содержащего диск назначения. Данный параметр задается числом: 0 = A, 1 = B, 2 = C и т. д.

первый_сектор

Задание шестнадцатеричного адреса первого сектора для записи.

число

Задание количества секторов, которые требуется записать.

?

Вывод списка подкоманд debug.

Примечания

  • Для записи количества байт, заданного в регистрах BX:CX, в файл на диске используется следующий Синтаксис команды:

w [адрес]

  • Для пропуска файловой системы и прямой записи указанных секторов используется следующий Синтаксис команды:

w [адрес] [диск] [первый_сектор] [число]

  • Задание правильных записей адреса

Адрес состоит из двух частей: первая содержит буквенное обозначение сегментного регистра или адрес сегмента из четырех цифр, а вторая содержит значение смещения. Адрес сегмента или сегментный регистр могут быть пропущены. По умолчанию для подкоманд a, g, l, t, u и w команды debug адрес сегмента содержится в регистре CS. Для других подкоманд по умолчанию используется сегмент DS. Все числовые значения при этом представлены в шестнадцатеричном формате. Между именем сегмента и значением смещения следует вставлять двоеточие. Следующие адреса являются допустимыми:

CS:0100

BA:0100

  • Имя файла на диске нужно задать при запуске программы Debug.exe или в последней вызванной подкоманде n (name). Оба эти метода правильно форматируют имя файла для блока управления файлом (FCB) по адресу CS:5C.
  • Сброс значений регистров BX:CX перед использованием команды w без параметров.

Если используются подкоманды g (go), t (trace), p (proceed) или r (register), перед использованием команды w без параметров значения регистров BX:CX необходимо сбросить.

  • Запись измененного файла на диск

Если файл был изменен, но имя, размер и начальный адрес не менялись, Debug.exe позволяет записать файл в его исходное расположение на диске.

  • Запись файлов .exe или .hex

Файлы с расширениями .exe и .hex нельзя записать с помощью этой команды.

Предупреждение!

    • Непосредственная запись в сектор диска является исключительно опасной, так как в этом случае не выполняется дескриптор файла Windows XP. Логическая структура диска может быть повреждена при вводе неверного значения.

Примеры

Чтобы записать содержимое области памяти, начиная с адреса CS:100, на диск B и собрать данные из 2Bh секторов, начиная с логического сектора диска под номером 37h, введите следующую команду:

Wcs:100 1 37 2b

После окончания операции записи выводится приглашение программы debug.



Последнее изменение этой страницы: 2016-06-10

headinsider.info. Все права принадлежат авторам данных материалов.