من سعی کردم دسترسی به حافظه کتابخانه ای c را در حافظه داشته باشم، اما به نوعی، من از خواندن آدرس در
محدود شده ام، کسی می تواند به من بگوید مشکلی است؟
این خط فرمان GDB من است [19659004] (gdb) disass main
توزیع کد مونتاژ برای عملکرد اصلی:
0x0000057d <+0>: lea 0x4 (٪ esp)،٪ ecx
0x00000581 <+4>: و $ 0xfffffff0،٪ esp
0x00000584 <+7>: pushl -0x4 (٪ ecx)
0x00000587 <+10>: فشار٪ ebp
0x00000588 <+11>: mov٪ esp،٪ ebp
0x0000058a <+13>: فشار٪ ebx
0x0000058b <+14>: فشار٪ ecx
0x0000058c <+15>: زیر $ 0x400،٪ esp
0x00000592 <+21>: تماس 0x480 <__x86.get_pc_thunk.bx>
0x00000597 <+26>: اضافه کردن $ 0x1a69،٪ ebx
0x0000059d <+32>: mov٪ ecx،٪ eax
0x0000059f <+34>: mov 0x4 (٪ eax)،٪ eax
0x000005a2 <+37>: افزودن $ 0x4،٪ eax
0x000005a5 <+40>: mov (٪ eax)،٪ eax
0x000005a7 <+42>: زیر $ 0x8،٪ esp
0x000005aa <+45>: فشار٪ eax
0x000005ab <+46>: lea -0x408 (٪ ebp)،٪ eax
0x000005b1 <+52>: فشار٪ eax
0x000005b2 <+53>: تماس 0x400
0x000005b7 <+58>: افزودن $ 0x10،٪ esp
0x000005ba <+61>: زیر $ 0xc،٪ esp
0x000005bd <+64>: lea -0x408 (٪ ebp)،٪ eax
0x000005c3 <+70>: فشار٪ eax
0x000005c4 <+71>: تماس 0x3f0
0x000005cc <+79>: زیر $ 0xc،٪ esp
0x000005cf <+82>: فشار دادن $ 0xa
0x000005d1 <+84>: تماس 0x420
0x000005d9 <+92>: mov $ 0x0،٪ eax
0x000005de <+97>: lea -0x8 (٪ ebp)،٪ esp
0x000005e1 <+100>: pop٪ ecx
0x000005e2 <+101>: pop٪ ebx
0x000005e3 <+102>: pop٪ ebp
0x000005e4 <+103>: lea -0x4 (٪ ecx)،٪ esp
0x000005e7 <+106>: ret
پایان تخلیه مونتاژ کننده
(gdb) x / 1i 0x420
0x420
(gdb) x / 1x 0x18
0x18: نمی تواند به حافظه در آدرس 0x18 دسترسی پیدا کند
متشکرم!