簡體   English   中英

Gdb 無法訪問 memory 地址

[英]Gdb Cannot access memory at address

我想在 UPtest function 中使用斷點在 0x000000000040124c 處停止。

在此處輸入圖像描述 在此處輸入圖像描述

運行 111 222 333 在此處輸入圖像描述 在此處輸入圖像描述 我需要在堆棧頂部顯示 32 條記錄。

x / 32wx $ esp,但顯示無法訪問地址 0xffffffffffffe0a0 處的 memory。

我想找到主程序的返回地址,怎么改才能顯示呢?如下圖。

在此處輸入圖像描述

您遇到的問題是$esp寄存器是 32 位的,但目標上的地址是 64 位的。 當您執行x/32wx $esp GDB 時,正在讀取$rsp rsp 寄存器,其值為0x7fffffffffffe0a0並將其屏蔽為 32 位,因此0xffffe0a0 ,然后將其符號擴展為 64 位,給出0xffffffffffffe0a0

試試x/32wx $rsp你應該有更多的運氣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM