Явное указание в
команде сегмента не является обязательным. Если сегмент не указан при помощи
префикса замены сегмента, процессор автоматически выбирает сегмент, согласно правилу,
отображенному в Таблице 9. (При использовании плоской модели памяти, правила
выбора сегмента являются "прозрачными" для прикладных программ.)
При различных
типах доступа к памяти по умолчанию используются различные сегменты. Операнды
данных, как правило, используют основной сегмент данных (сегмент DS). Однако,
т.к. регистры ESP и EBP используются для работы со стеком, то при использовании
одного из этих регистров в команде, по умолчанию используется сегмент стека
(сегмент SS).
В качестве
префикса замены сегмента может выступать любой сегментный регистр. Однако, в
перечисленных ниже случаях будет всегда использоваться сегмент, принятый по
умолчанию, даже если используется префикс замены сегментов:
- Для
строки-приемника в командах обработки строк используется сегмент ES.
- Для
операнда-приемника в команде занесения в стек и для операнда-источника в
команде удаления из стека используется сегмент SS.
- При выборе
команд используется сегмент CS