如何访问当前调试实例中的cpu寄存器?从gdb你可以调用例子printf "0x%x", $eax,set $eax_b = $eax还有一种方法可以通过python支持gdb提供吗?或者我应该创建一个python函数,可以调用,就像save-reg "eax" $eax他手上的寄存器存储在我希望它们存储的数组中?
另一方面,使用gdb脚本set $eax = 1000,例如,我也可以在python脚本中执行此操作,而不是使用gdb脚本.
这是我的代码:
volatile uint32_t value = *((volatile uint32_t *) 0xA0000000); // here `value` is 12498
value *= 2; // here `value` is still 12498
value |= 0x0000001; // still 12498
Run Code Online (Sandbox Code Playgroud)
value在我的调试器中分析变量时,它在所有行上保持相同的值.我究竟做错了什么?