寄存器是位于在 CPU 的小易失性内存单位。 许多寄存器专用于特定用途,并可用于用户模式应用程序使用的其他寄存器。 基于 x86 和基于 x64 的处理器在有可用的寄存器的不同集合。

如何打开寄存器窗口

  • 通过菜单View--->Registers
  • 通过快捷键Alt+4
  • 通过工具栏

寄存器窗口

通过上面方式打开的窗口如下:

寄存器窗口包含两个列。 Reg列列出了所有目标处理器的寄存器。 Value列显示每个注册的当前值。 此窗口还包含自定义按钮在工具栏上,打开自定义注册列表对话框:

在寄存器窗口中,可以执行以下操作:

  • Value列显示每个注册的当前值。 以红色文本显示的最近更改的寄存器的值。

    • 若要输入新值,请双击单元格,然后键入新值或编辑旧值。 (剪切、 复制和粘贴命令是可用来进行编辑。)
    • 若要保存新值,请按 ENTER。
    • 若要放弃的新值,请按 ESC。
    • 如果键入无效的值,按 ENTER 键时,将重新出现的旧值。
  • 寄存器值显示在当前的基数,并且必须在相同的基数中键入新值。 若要更改当前的基数,请使用n (设置数量 Base)命令在调试器命令窗口中。

  • 在用户模式下,寄存器窗口显示与当前线程相关联的寄存器。

  • 在内核模式下,寄存器窗口显示与当前相关联的寄存器注册上下文。 可以设置寄存器上下文以匹配特定线程、 上下文记录或捕获帧。 实际显示仅指定的寄存器上下文的最重要寄存器;不能更改它们的值。

寄存器窗口已包含一个工具栏自定义按钮和具有带其他命令的快捷菜单。 若要访问菜单,请右键单击标题栏或单击窗口右上角附近的图标 ()。 工具栏和菜单包含以下按钮和命令:

  • (工具栏和菜单)自定义会打开自定义寄存器列表对话框中,在本主题中的以下部分中所述。

  • (仅限菜单)工具栏工具栏,开启和关闭。

  • (仅限菜单)停靠取消停靠将使窗口进入或离开停靠的状态。

  • (仅限菜单)移到新停靠寄存器窗口将关闭,并将其打开新的平台中。

  • (仅限菜单)设置为选项卡形式停靠为窗口中,键入目标不可用于寄存器窗口。 此选项才可用的源或内存窗口。

  • (仅限菜单)始终浮点将使窗口停靠,即使仍拖到停靠位置。

  • (仅限菜单)移动与帧将使窗口移动时移动的 WinDbg 帧,即使在窗口已解除固定。

  • (仅限菜单)帮助有关 Windows 调试工具文档中打开此主题。

  • (仅限菜单)关闭关闭此窗口。

自定义注册列表对话框

若要更改显示的寄存器的列表,请单击自定义按钮。 自定义寄存器列表对话框将出现。在此对话框中,可以编辑的寄存器,若要更改的寄存器的显示的顺序的列表。 (不能实际从列表中删除寄存器; 如果这样做,它将结束时重新出现。)寄存器名称之间必须留一个空格。如果选择修改显示首次寄存器值复选框,其值已更改的寄存器最近显示在顶部。如果选择不会显示 subregisters复选框,subregisters 不会显示。 例如, eax将显示,但不是axah,或者al。单击确定以保存所做的更改或取消放弃所做的更改。如果你正在调试多个类型的处理器的多处理器计算机,WinDbg 将单独存储每个处理器类型的自定义设置。 这种分离使您可以同时自定义的每个处理器的寄存器的显示。

Windbg Register(寄存器)窗口的使用的更多相关文章

  1. Windbg Watch(监视)窗口的使用

    在WinDbg中,可以使用“监视”窗口显示和更改全局和局部变量和寄存器信息. 您可以自定义此窗口以显示您正在跟踪的项..“监视”窗口可以显示所需的任何变量列表.这些变量可以包括来自任何函数的全局变量和 ...

  2. Windbg Locals(局部变量)窗口的使用

    在WinDbg中,可以通过输入命令.使用“局部变量”窗口或使用“监视”窗口查看局部变量.局部变量窗口显示当前作用域中的本地变量的所有信息. 如何打开Locals窗口 通过菜单View--->Lo ...

  3. Windbg Memory(内存)窗口的使用

    在 WinDbg 中,可以查看和编辑内存,通过输入命令或通过使用内存窗口. 内存窗口的打开 通过菜单View-->Memory 通过快捷键Alt+5 通过工具栏 使用内存窗口 通过上面方式打开的 ...

  4. c++拓展register寄存器

    寄存器----硬件和软件打交道的接口,这上面装了android,亦或是 windows,linux就能和相关的操作系统设备打交道 早期硬件性能并不很快时,为了提高程序运行的效率,会声明一个寄存器变量, ...

  5. 【C\C++笔记】register寄存器关键字

    使用寄存器变量提高运行速度 1未使用寄存器组 #include<stdio.h> int main(){ unsigned long a=0; for(int i=0;i<10000 ...

  6. 使用GDB调试Go语言

    用Go语言已经有一段时间了,总结一下如何用GDB来调试它! ps:网上有很多文章都有描述,但是都不是很全面,这里将那些方法汇总一下 GDB简介  GDB是GNU开源组织发布的⼀一个强⼤大的UNIX下的 ...

  7. WinDbg命令窗口的使用

    调试器命令窗口是windbg中的主要调试信息窗口.可以在此窗口中输入调试程序命令并查看命令输出.Windbg的命令窗口是我们进行调试时,主要打交道的窗口.界面如下 对于windbg,“调试器命令窗口” ...

  8. 第二章排错的工具:调试器Windbg(上)

    感谢博主 http://book.51cto.com/art/200711/59731.htm <Windows用户态程序高效排错>第二章主要介绍用户态调试相关的知识和工具.本文主要讲了排 ...

  9. 认识WinDbg

    WinDbg学习笔记(一)--认识WinDbg 一.前言    本人学习WinDbg已经有好几天了,虽说技术掌握的还不太熟练,不过也总算是入门了在学习WinDbg的过程中,觉得WinDbg真的比Oll ...

随机推荐

  1. springboot kafka生产者

    pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http ...

  2. Pandas中查看列中数据的种类及个数

    Pandas中查看列中数据的种类及个数 读取数据 import pandas as pd import numpy as np filepath = 'your_file_path.csv' data ...

  3. thinkphp中怎么使用phpmailer发送邮件

    phpmailer发送邮件是php开发者首选的一个邮件发送插件了,下面我来介绍怎么集成phpmailer到thinkphp框架了,有需要了解的朋友可参考. phpmailer发送邮件功能很强大,今天真 ...

  4. 轻量级搜索工具【Everything】的设置

    下面是我对 轻量级搜索工具[Everything]的设置 Everything 下载地址:http://www.voidtools.com/downloads/ 1. 排除 Windows => ...

  5. mysqlbinlog恢复误删数据

    概述 代码bug,在处理上传出现异常时执行了DELETE FROM t_resource WHERE resource_id = ? OR parent_id = ?因为OR条件导致用户的上传的所有数 ...

  6. C#通过字符串分割字符串Split

    string[] strArr = str.Split(new[] {"****==="},StringSplitOptions.None); 更多内容关注公众号 洛水梅家

  7. IC卡、ID卡、M1卡、射频卡的区别是什么(射频卡是种通信技术)

    IC卡.ID卡.M1卡.射频卡都是我们常见的一种智能卡,但是很多的顾客还是不清楚IC卡.ID卡.M1卡.射频卡的区别是什么,下面我们一起来看看吧. 所谓的IC卡就是集成电路卡,是继磁卡之后出现的又一种 ...

  8. 使用XSSFWorkbook 读取excel

    工作中用到 使用XSSFWorkbook 读取excel 具体代码如下, private (List<(string columnName, string colomnDescription)& ...

  9. Linq分批次,每组1000条

    /// <summary> /// 分组插入每次插入1000 /// </summary> /// <param name="data">< ...

  10. 使用linq对ado.net查询出来dataset集合转换成对象(查询出来的数据结构为一对多)

    public async Task<IEnumerable<QuestionAllInfo>> GetAllQuestionByTypeIdAsync(int id) { st ...