ここでは私のdisasコードです:メモリにアクセスすることはできません - gdbの
Dump of assembler code for function main:
0x00000000000006b0 <+0>: push %rbp
0x00000000000006b1 <+1>: mov %rsp,%rbp
0x00000000000006b4 <+4>: sub $0x10,%rsp
0x00000000000006b8 <+8>: movl $0xa,-0xc(%rbp)
0x00000000000006bf <+15>: lea -0xc(%rbp),%rax
0x00000000000006c3 <+19>: mov %rax,-0x8(%rbp)
0x00000000000006c7 <+23>: lea 0x96(%rip),%rdi # 0x764
0x00000000000006ce <+30>: mov $0x0,%eax
0x00000000000006d3 <+35>: callq 0x560 <[email protected]>
0x00000000000006d8 <+40>: mov $0x0,%eax
0x00000000000006dd <+45>: leaveq
0x00000000000006de <+46>: retq
私はb *表0x00000000000006b4によって0x06b4にブレークポイントを設定し、それがエラーに Starting program: /root/print.out Warning: Cannot insert breakpoint 4. Cannot access memory at address 0x6b4
を与えているコードを実行したときに、私はでそれを行うときb 4コードを実行すると、正常に動作しています。最初のケースで何が間違っているのですか?
ブレークポイントが動作しているときにアドレスをチェックしましたか?それらは分解と一致しますか? –
はい、同じです –
これらのアドレスは非常に低いです。質問を編集して、オペレーティングシステム、コンパイル設定、gdbコマンドラインオプションなどの説明を追加できますか? –