05.用gdb查看和修改内存

GDB 中为我们提供了查看内存的命令 x,它是 examine 命令的简写,使用 x 命令查看内存数据的格式有很多种,这里的内存数据可以是任意类型。命令的详细介绍如下。

x  /<n/f/u> <addr>
参数 f 的可选值:
  • x 按十六进制格式显示变量。
  • d 按十进制格式显示变量。
  • u 按十六进制格式显示无符号整型。
  • o 按八进制格式显示变量。
  • t 按二进制格式显示变量。
  • a 按十六进制格式显示变量。
  • c 按字符格式显示变量。
  • f 按浮点数格式显示变量。
参数 u 的可选值:
  • b 表示单字节
  • h 表示双字节
  • w 表示四字节
  • g 表示八字节

查看/修改内存

  • x /选项 内存地址
  • x /d
  • x /4d
  • x /16s 结构体变量地址

代码

https://github.com/CoderDuanGe/gdbdebug/tree/master/section5

查看内存

在这里插入图片描述
在这里插入图片描述

修改内存

在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Vivado SDK 2019.1 是一种集成开发环境,用于设计和开发基于Xilinx FPGA的嵌入式系统。其中包含了一款名为GDB(GNU 调试器)的强大的调试工具,可以用于调试开发的软件程序。下面是关于Vivado SDK 2019.1中GDB调试的一些信息。 GDB调试是一种常用的调试技术,可以帮助开发人员检测和修复软件程序中的错误。在Vivado SDK 2019.1中,我们可以使用GDB调试器来调试在FPGA上运行的嵌入式软件。 首先,我们需要将GDB调试器与目标硬件连接起来。Vivado SDK提供了与FPGA开发板的连接接口,使我们可以通过JTAG或UART等方式与板上的嵌入式系统进行通信。通过GDB调试器,我们可以将目标硬件与Vivado SDK连接起来,并在开发环境中设置断点、监视变量、单步执行等调试操作。 在Vivado SDK 2019.1中,我们还可以使用GDB的命令行界面或图形界面进行调试。通过命令行界面,我们可以使用GDB提供的命令来控制调试过程,例如设置断点、查看寄存器状态、跟踪变量的值等。而通过图形界面,我们可以使用更直观的方式来操作GDB调试器。 除了基本的断点和变量查看功能外,Vivado SDK 2019.1中的GDB调试还提供了一些高级功能,例如远程调试、多线程调试等,以满足复杂的调试需求。 总结起来,Vivado SDK 2019.1中的GDB调试是一款强大的调试工具,可以帮助开发人员定位和修复嵌入式软件中的问题。通过GDB调试器,我们可以连接目标硬件,在Vivado SDK环境中进行断点设置、变量跟踪和单步执行等调试操作,以提高嵌入式系统的稳定性和可靠性。 ### 回答2: Vivado SDK 2019.1是Xilinx提供的一款软件开发工具套件,用于基于Xilinx FPGA平台的软件开发。其中,GDB(GNU Debugger)是一种用于调试程序的开源调试器。 在Vivado SDK 2019.1中,可以使用GDB来进行程序调试。首先,需要在Vivado SDK中打开要调试的工程,并确保该工程已经编译成功。然后,可以使用GDB来加载可执行程序文件并调试程序。以下是一些调试过程中常用的GDB命令: 1. break:设置断点,可以在程序中指定的位置暂停执行,方便观察程序状态。 2. run:运行程序,调试器将在遇到第一个断点时停止执行。 3. step:单步执行当前指令,进入函数中将进入函数内部。 4. next:单步执行当前指令,不进入函数内部。 5. continue:继续执行程序,直到遇到下一个断点。 6. print:打印变量的值。 7. watch:监视变量的值,当其发生变化时停止程序执行。 在调试过程中,还可以使用其他GDB命令来观察和修改程序的内存、寄存器状态等。调试完成后,可以使用GDB命令quit退出调试器。 总的来说,Vivado SDK 2019.1支持使用GDB进行程序调试,通过GDB命令可以对程序的执行过程和状态进行观察和调整,帮助开发人员定位和解决程序中的问题。 ### 回答3: Vivado SDK是一个集成开发环境(IDE),用于在Xilinx FPGA平台上开发和调试软件。其中包含了一些调试工具,包括使用GDB作为调试器。下面将以Vivado SDK 2019.1版本为例来介绍GDB调试。 在使用Vivado SDK进行GDB调试之前,首先需要在项目中添加GDB支持,并在生成Bitstream后,使用Xilinx Hardware Manager下载Bitstream到目标板上。 然后,需要在Vivado SDK的"Debug Configurations"中配置一个调试会话。选择"Xilinx C/C++ application (GDB)"类型,点击"New launch configuration"创建一个新的调试配置。在"Main"标签页中,选择编译生成的可执行文件;在"Debugger"标签页中,选择合适的调试工具(如Xilinx System Debugger),并设置调试连接参数;最后,在"Common"标签页中,设置调试参数,例如程序参数和工作目录。点击"Apply"和"Debug"启动调试会话。 启动调试后,Vivado SDK将通过GDB与目标板进行通信,并跟踪目标程序的执行状态。可以设置断点和单步调试,观察变量和寄存器的值,以及查看程序的调用栈信息。同时,可以使用GDB提供的命令来控制调试会话,例如继续执行、暂停、查看内存等。 在调试过程中,如果发现问题或异常情况,可以使用Vivado SDK中的调试工具和GDB提供的功能,帮助定位和修复错误。例如,可以设置条件断点来检查特定条件下的程序行为,或者使用监视点来跟踪变量的变化情况。 总结来说,Vivado SDK 2019.1版本支持使用GDB进行调试,通过配置调试会话并使用GDB提供的功能,可以方便地进行程序的调试和错误排查。此外,Vivado SDK还提供了其他的调试工具,如性能分析器和系统级调试器,可用于更全面和深入地分析和调试FPGA上的软件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值