Из того, что я знаю, еще во времена 16-битных ПК регистры сегментов содержали адрес каждого типа сегмента, и вы могли получить доступ к смещению с помощью чего-то вроде этого SS: [EDI], это будет принимать значение, содержащееся в нем. в EDI как смещение к сегменту стека.
Теперь я знаю, что в 32-битных системах у нас есть GDT (глобальная таблица дескрипторов) и LDT (локальная таблица дескрипторов), сегменты теперь содержат индекс в эту таблицу, и можно рассчитать смещение, которое будет указывать вправо. адрес памяти.
Правильно ли мое понимание?
PUSH DWORD PTR SS: [EBP + 8]; basicbof.00401000
Так что же означает такое утверждение в 32-битной ОС (XP SP2)?