# Register view

During a debug session, you can inspect register values of the current frame in the Variables view:

![Registers node in the Variables pane](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registers_node.png)

When you switch to [disassembly](disassembly-view.html), CLion adds the Registers node and the registers used by the current function. Register values are also shown inlined in the disassembly view:

![Registers node added in disassembly view](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registerview_disasm.png)

To view registers for the sources as well, right-click in the Variables pane and select Registers | Always Show:

![Opening register view](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registerview_menu.png)

Procedure: Select register sets

1. By default, CLion shows only the general purpose registers. Use the Registers section of the context menu to add other register sets:

![Selecting register sets](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registerview_sets.png)

> **Note:**
> Registers and register sets are provided by the underlying debugger and are different for GDB and LLDB.

## Register values representation

CLion shows register values in hex. If the debugger provides an alternative representation, it is shown next to the hex values and colored in grey:

![Hex and decimal representation of register values](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registers_hex_dec.png)

Wide vector registers are shown as nodes with children. Currently, this mode is supported by GDB only.

![Wide vector registers as nodes with children](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registers_wide.png)

Procedure: Search for a particular register

1. Focus in the Variables pane and start typing the register name:

![Search in registers](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registers_search.png)

Procedure: Keep track of register values

1. Right-click the register you want to track and select Add to Watches from the context menu:

![Adding a value to register](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registers_addwatch.png)

2. The register will move to the top, and you will see the value being updated as you [step through](stepping-through-the-program.html) the code:

![Register watch](https://resources.jetbrains.com.cn/help/img/idea/2026.2/cl_registers_watch.png)

> **Tip:**
> For more information, refer to [Watches](examining-suspended-program.html#watches).

Procedure: Modify a register value

> **Note:**
> Only non-wide registers can be modified.

1. Select the register and press `F2` (Windows), `F2` (macOS), `F2` (IntelliJ IDEA Classic (macOS)), `F2` (macOS System Shortcuts), `F2` (XWin), `F2` (GNOME), `F2` (KDE), `F2` (Emacs), `F2` (Sublime Text), `F2` (Sublime Text (macOS)), `F2` (Xcode), `F2` (Visual Studio), `F2` (Visual Studio (macOS)), `F2` (ReSharper), `F2` (ReSharper (macOS)), `F2` (QtCreator), `F2` (QtCreator (macOS)), `F2` (NetBeans), `F2` (Eclipse), `F2` (Eclipse (macOS)).

2. Enter the new value and press `Enter` (Windows), `⏎` (macOS), `⏎` (IntelliJ IDEA Classic (macOS)), `⏎` (macOS System Shortcuts), `Enter` (XWin), `Enter` (GNOME), `Enter` (KDE), `Enter` (Emacs), `Enter` (Sublime Text), `⏎` (Sublime Text (macOS)), `⏎` (Xcode), `Enter` (Visual Studio), `⏎` (Visual Studio (macOS)), `Enter` (ReSharper), `⏎` (ReSharper (macOS)), `Enter` (QtCreator), `⏎` (QtCreator (macOS)), `Enter` (NetBeans), `Enter` (Eclipse), `⏎` (Eclipse (macOS)).

