TURBO PASCAL

Новости

Программы   

Turbo Pascal 

Игры

Документация   

Странности

FAQ

Ссылки

Форум

Гостевая книга

Рассылка

Благодарности

Об авторе

 

 

Предопределенные селекторы 

             В модуле  System  для  обычно используемых адресов реального
        режима предусмотрено  несколько предопределенных селекторов.  Они
        именуются по  физическому  сегменту,  которому  данные  селекторы
        присвоены,  и используются для совместимости между реальным и за-
        щищенным режимом DOS.

                           Предопределенные селекторы        Таблица 17.1
        ┌──────────────────┬────────────────────────────────────────────┐
        │    Селектор      │              Описание                      │
        ├──────────────────┼────────────────────────────────────────────┤
        │    Seg0040       │ Используется для  доступа к области  данных│
        │                  │ BIOS $40 в младших адресах.                │
        ├──────────────────┼────────────────────────────────────────────┤
        │    SegA000       │ Используется для  доступа к графической па-│
        │                  │ мяти EGA и VGA по адресу сегмента $A000.   │
        ├──────────────────┼────────────────────────────────────────────┤
        │    SegB000       │ Используется для  доступа к видеопамяти мо-│
        │                  │ нохромного адаптера  по   адресу   сегмента│
        │                  │ $A000.                                     │
        ├──────────────────┼────────────────────────────────────────────┤
        │    SegB800       │ Используется   для  доступа  к  видеопамяти│
        │                  │ цветного графического адаптера  по   адресу│
        │                  │ сегмента $A000.                            │
        └──────────────────┴────────────────────────────────────────────┘

             В реальном режиме переменные SegXXXX всегда содержат  значе-
        ния $0040,  $A000, $B000 и $B800 соответственно. В защищенном ре-
        жиме код запуска библиотеки исполняющей  системы  создает  четыре
        селектора, ссылающихся на конкретные области памяти реального ре-
        жима. При ссылке на эти области памяти вам  следует  использовать
        переменные SegXXXX. Например, если у вас был код следующего вида:

         B.Pascal 7 & Objects/LR     - 281 -


             CtrMode := Mem[$40: $49];

        то вместо него следует записать:

             CtrMode := Mem[Seg0040: $49];

             Используя переменные SegXXXX,  вы можете гарантировать,  что
        ваша программа без изменений будет работать в реальном и защищен-
        ном режимах.

Содержание

На первую страницу

Rambler's Top100 Rambler's Top100
PROext: Top 1000

(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

Hosted by uCoz