Win32asm обучение


Урок 4 - Память - часть 2


Регистры указателя большую часть времени содержат смещение, но и универсальные регистры (ax, bx, cx, dx и т.д.) также могут использоваться для этого. IP указывает смещение (в регистре CS (сегмент кода)) команды, которая в настоящее время выполнена. SP содержит смещение (в регистре SS (сегмент стека)) текущей позиции стека.

4.2 - 32-разрядный Windows

В 16-разрядном программировании, сегменты необходимы. К счастью, эта проблема решена в 32-разрядном Windows (95 и выше). Вы все еще имеете сегменты, но вам не нужно заботиться о них, потому, что они уже не 64kb (как в 16-разрядном), а 4 Гб. Windows вероятно даже "повиснет", если вы попытаетесь изменить один из сегментных регистров. Это называеся плоской моделью памяти (flat). Здесь есть только смещения и они теперь 32-разрядные (в диапазоне от 0 до 4,294,967,295). Каждая ячейка в памяти указывается смещением. Это действительно одно из лучших преимуществ 32-разрядного программирования над 16-разрядным. Так что теперь вы можете забыть о сегментных регистрах и сосредоточиться на других регистрах.

[наверх]




- Начало -  - Назад -  - Вперед -



Книжный магазин