Флаг направления

редактировать

Флаг направления - это флаг , который управляет направлением слева направо или справа налево для строки обработка, хранящаяся в регистре FLAGS на всех x86 -совместимых процессорах. Это битовое число 10.

Этот флаг используется для определения направления («вперед» или «назад»), в котором несколько байтов данных будут скопированы из одного места в памяти в другое. Направление важно в основном, когда исходная позиция данных в памяти и целевая позиция данных перекрываются.

  • Если он установлен в 0 (с использованием флага очистки инструкция CLD) - это означает, что строка обрабатывается, начиная с младшего до самого высокого адреса ; такой режим инструкций называется режимом автоинкремента. И исходный индекс, и целевой индекс (например, MOVS) увеличивают их;
  • если он установлен на 1 (с использованием набора -direction-flag инструкция STD) - строка обрабатывается от самого высокого до самого низкого адреса. Это называется режимом автоматического уменьшения.
x86-инструкция ЗначениеФлагПримечания
Направление

обработки строки

Название режима
CLDочистить флаг направления0от наименьшего к наибольшему адреса с автоматическим увеличением
STDустановить флаг направления1от наименьшего к наименьшему адресуавтоматическое уменьшение
Ссылки
Последняя правка сделана 2021-05-17 08:18:00
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте