Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Регистры — это небольшие блоки памяти, расположенные на ЦП. Многие регистры предназначены для конкретных целей, а другие регистры доступны для использования приложений в пользовательском режиме. Процессоры на основе x86 и x64 имеют различные коллекции регистров. Дополнительные сведения о регистрах на каждом процессоре см. в разделе "Архитектура процессора".
В WinDbg можно просматривать и изменять регистры, введя команды, используя окно "Регистры" или с помощью окна "Просмотр".
Команды
Вы можете просматривать и изменять регистры, введя команду r (Registers) в окне команды отладчика. Отображение можно настроить с помощью нескольких параметров или с помощью команды rm (Register Mask).
Регистры также автоматически отображаются при каждом остановке целевого объекта. Если вы выполняете пошаговое выполнение кода с помощью команд p (step) или t (Trace), вы увидите регистр на каждом шаге. Чтобы остановить это отображение, используйте параметр r при использовании этих команд.
На процессоре на основе x86 параметр r также управляет несколькими однобитными регистрами, известными как флаги. Для изменения этих флагов используется немного другой синтаксис, чем при изменении регулярных регистров. Дополнительные сведения об этих флагах и объяснении этого синтаксиса см. в разделе "Флаги x86".
Окно "Регистры"
Открытие окна "Регистрация"
Чтобы открыть или переключиться в окно "Регистрация", выберите "Регистрация" в меню "Вид ". (Вы также можете нажать клавиши ALT+4 или нажать кнопку "Регистры " на панели инструментов. ALT+SHIFT+4 закрывает окно "Регистры".)
На следующем снимке экрана показан пример окна registers.
Окно "Регистры" содержит два столбца. В столбце Reg перечислены все регистры целевого процессора. Столбец "Значение" отображает текущее значение каждого регистра. Это окно также содержит кнопку "Настройка" на панели инструментов, которая открывает диалоговое окно "Настройка списка регистров ".
Использование окна "Регистрация"
В окне "Регистрация" можно выполнить следующее:
Столбец "Значение" отображает текущее значение каждого регистра. Значение последнего измененного регистра отображается в красном тексте.
- Чтобы ввести новое значение, дважды щелкните ячейку "Значение ", а затем введите новое значение или измените старое значение. (Команды выреза, копирования и вставки доступны для редактирования.)
- Чтобы сохранить новое значение, нажмите клавишу ВВОД.
- Чтобы отменить новое значение, нажмите клавишу ESC.
- Если ввести недопустимое значение, старое значение будет вновь появиться при нажатии клавиши ВВОД.
Значения регистра отображаются в текущем радиксе, и необходимо ввести новые значения в один и тот же радикс. Чтобы изменить текущий радикс, используйте команду n (Set Number Base) в окне команды отладчика.
В пользовательском режиме окно "Регистры" отображает регистры, связанные с текущим потоком. Дополнительные сведения о текущем потоке см. в разделе "Управление процессами и потоками".
В режиме ядра окно "Регистры" отображает регистры, связанные с текущим контекстом регистра. Контекст регистра можно задать для сопоставления с определенным потоком, записью контекста или кадром ловушки. Отображаются только наиболее важные регистры для указанного контекста регистра; нельзя изменить их значения.
В окне "Регистрация" есть панель инструментов, содержащая кнопку "Настройка " и контекстное меню с дополнительными командами. Чтобы получить доступ к меню, выберите и удерживайте (щелкните правой кнопкой мыши) заголовок или щелкните значок в правом верхнем углу окна (
(Панель инструментов и меню) Настройка открывает диалоговое окно "Настройка списка регистров", описанное в следующем разделе этой темы.
(Только меню) Панель инструментов включает и отключает панель инструментов.
(Только меню) Закрепление или Открепление вызывает вход окна в закреплённое состояние или выход из него.
(Только меню) Переход на новую док-станцию закрывает окно "Регистрация" и открывает его в новой док-станции.
(Только меню) Установка целевого объекта tab-dock для типа окна недоступна для окна Registers. Этот параметр доступен только для окон источника или памяти.
(Только меню) Всегда плавающее окно приводит к тому, что окно остается незакрепленным, даже если оно перетаскивается в область закрепления.
(Только в меню) Перемещение вместе с рамкой приводит к перемещению окна при перемещении фрейма WinDbg, даже если окно откреплено.
(Только меню) Справка открывает эту тему в документации по средствам отладки для Windows.
(Только меню) Закрывает это окно.
Диалоговое окно "Настройка списка регистров"
Чтобы изменить список отображаемых регистров, нажмите кнопку "Настроить ". Откроется диалоговое окно "Настройка списка регистрации ".
В этом диалоговом окне можно изменить список регистров, чтобы изменить порядок отображения регистров. (Вы фактически не можете удалить регистр из списка. Если вы это делаете, оно будет повторно отображаться в конце.) Между именами регистров должно быть пробел.
Если вы установите флажок Отобразить сперва измененные значения регистра, в верхней части появится регистр, значения которого были изменены наиболее недавно.
Если флажок "Не отображать подрегистры", подрегистры не отображаются. Например, будет отображаться eax, но не ax, ah или al.
Нажмите кнопку "ОК ", чтобы сохранить изменения или отменить изменения.
Если выполняется отладка многопроцессорного компьютера с несколькими типами процессоров, WinDbg сохраняет параметры настройки для каждого типа процессора отдельно. Это разделение позволяет одновременно настраивать отображение регистров каждого процессора.
Окно "Наблюдение"
В WinDbg можно использовать окно "Просмотр" для отображения регистров. Нельзя использовать окно наблюдения для изменения значений регистров.
Чтобы открыть окно "Просмотр", выберите "Смотреть " в меню "Вид ". Вы также можете нажать клавиши ALT+2 или нажать кнопку "Смотреть " на панели инструментов:
На следующем снимке экрана показан пример окна "Наблюдение".
См. также
Дополнительные сведения о контексте регистрации и других параметрах контекста см. в разделе "Изменение контекстов".