gdb 使用方法
2020-02-07 本文已影响0人
凌空_lingkong
gdb init steps
-
set arch riscv:rv32
set to 32bit for e21 -
target remote :3333
连到openocd端口3333 -
monitor reset halt
reset -
flushregs
reset registers -
file elf_file_full_path
指定elf -
thread apply all load
load elf
gdb commands
-
x /[Length][Format] [Address expression]
显示地址中的数据
int main()
{
char testArray[] = "0123456789ABCDEF";
return 0;
}
x/5i $pc
显示从当前位置开始的5条指令
x testArray
显示1个字符和对应的ascii码0x33323130
x/c testArray
显示1个字符和对应的ascii码48 '0'
x/3c testArray
显示3个字符和对应的ascii码48 '0' 49 '1' 50 '2'
x/s testArray显示字符串
0123456789ABCDEFx/wx testArray
显示32bit
0x33323130x/gx testArray
显示giant-word,64bit
0x3736353433323130x/2hx testArray
显示half-word,16bit
0x3130 0x3332`
-
info b
显示breakpoints -
info registers
显示的寄存器 -
info all-registers
显示所有的寄存器,包括msr -
info registers a5
显示a5值 -
backtrace
显示调用stack