据我所知,在 16 位 PC 的时代,我们的段寄存器包含每种类型段的地址,您可以使用类似 SS:[EDI] 的方式访问偏移量,这会将 EDI 中包含的值作为堆栈段的偏移量。
现在我知道在 32 位系统中,我们有 GDT(全局描述符表)和 LDT(本地描述符表),段现在包含该表的索引,并且可以计算出指向正确内存地址的偏移量。
我的理解正确吗?
PUSH DWORD PTR SS:[EBP+8] ; basicbof.00401000
那么这样的声明在 32 位操作系统(XP SP2)上意味着什么?