Поделиться через


p (шаг)

Команда p выполняет одну инструкцию или исходную строку и при необходимости отображает полученные значения всех регистров и флагов. При возникновении вызовов или прерываний вложенных вызовов они рассматриваются как один шаг.

Режим пользователя

[~Thread] p[r] [= StartAddress] [Count] ["Command"] 

Режим ядра

p[r] [= StartAddress] [Count] ["Command"] 

Параметры

Нить
Указывает потоки для продолжения выполнения. Все остальные потоки заморожены. Дополнительные сведения о синтаксисе см. в разделе "Синтаксис потока". Потоки можно указать только в пользовательском режиме.

r
Включает и отключает отображение регистров и флагов. По умолчанию отображаются регистры и флаги. Вы можете отключить отображение регистрации с помощью команд pr, tr или .prompt_allow -reg. Все три из этих команд управляют одинаковым параметром, и вы можете использовать любой из них для переопределения любого предыдущего использования этих команд.

Вы также можете отключить отображение регистрации с помощью команды l-os. Этот параметр отличается от других трех команд. Чтобы управлять отображением регистров и флагов, используйте команду rm (Register Mask).

StartAddress
Указывает адрес, в котором должно начинаться выполнение. Если вы не используете StartAddress, выполнение начинается с инструкции, на которую указывает указатель инструкции. Дополнительные сведения о синтаксисе см. в разделе "Синтаксис адреса и диапазон адресов".

Считать
Указывает количество инструкций или исходных строк, которые необходимо выполнить перед остановкой. Каждый шаг отображается как отдельное действие в окне команды отладчика. Значение по умолчанию равно единице.

Команда
Указывает команду отладчика, выполняемую после выполнения шага. Эта команда выполняется до отображения стандартных результатов p . Если вы также используете count, указанная команда выполняется после завершения всех шагов (но до отображения результатов последнего шага).

Среда

Позиция Description
Режимы режим пользователя, режим ядра
Целевые объекты только динамическая отладка
Платформы all

Дополнительная информация

Дополнительные сведения о выпуске команды p и обзоре связанных команд см. в разделе "Управление целевым объектом".

Замечания

При указании count каждая инструкция отображается так, как она выполняется.

Если отладчик сталкивается с инструкцией вызова или прерыванием при пошаговом выполнении, вызываемая подпрограмма будет выполняться полностью, если точка останова не обнаружена. Элемент управления возвращается отладчику по следующей инструкции после вызова или прерывания.

Каждый шаг выполняет одну инструкцию сборки или одну исходную строку в зависимости от того, находится ли отладчик в режиме сборки или в режиме источника. Используйте команды l+t и l-t или кнопки на панели инструментов WinDbg, чтобы переключаться между этими режимами.

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