VSCode汇编调试异常:变量区无寄存器、监视区无法查看寄存器值
解决VSCode汇编调试寄存器显示问题
- 先确认编译和调试配置:
- 编译汇编时必须加
-g参数生成调试信息,比如nasm -f elf32 test.asm -g -o test.o,链接后得到带调试信息的可执行文件。 - 检查
launch.json配置,确保调试器类型是cppdbg,并且miDebuggerPath指向正确的GDB路径(比如Windows下的gdb.exe,Linux下的/usr/bin/gdb)。
- 编译汇编时必须加
- 直接用调试控制台查看寄存器:在调试控制台输入
info registers(或简写i r),能一次性查看所有寄存器的数值,比监视单个更高效。 - 调整监视语法:试试去掉
$符号,直接在监视面板输入eax;如果是GDB调试器,也可以用$eax,但要确认调试器版本支持该语法。 - 检查扩展和调试器兼容性:确保安装了微软官方的C/C++扩展,汇编调试依赖它的GDB集成;如果调试32位汇编,要确保GDB支持对应架构(比如Linux装
gdb-multiarch,Windows用32位MinGW的GDB)。
内容的提问来源于stack exchange,提问作者TBY
相关产品推荐
相关产品推荐

