0x8048384 <main+16>: 0x00fc45c7 0x83000000 0x7e09fc7d 0xc713eb02
0x8048394 <main+32>: 0x84842404 0x01e80804 0x8dffffff 0x00fffc45
那么每个内存地址包含 16 个字节的数据?4x4 = 16。因此 4 个字节 = 0x00fc45c7
我对吗?
答案1
不是的。内存中的特定地址通常指向一字节的内存。但是,此处的显示内容显示的是从0x8048384
到的每个内存字节0x80483A4
- 这是 32 个字节的内存,分为 2 行,每行 4 个 4 字节值。
如果您仔细查看左侧,您会发现行与行之间的地址不是以 1 为增量,而是以 16: 84
->94
为增量(以 16 为基数),这表示每行显示 16 个字节的内存。这通常比每行显示 1 个字节更方便,并且这些 16 字节行进一步细分为 4 字节组,因为使用对齐的 32 位数字很常见,每个 4 字节组代表这些数字。这使得更容易直观地处理信息,而无需借助其他工具进行解释。