<<
>>

Условные переходы

До сих пор мы рассматривали команды перехода с «безусловным» принципом дей- ствия, но в системе команд процессора есть большая группа команд, призванных самостоятельно принимать решение о том, какая команда должна выполняться следующей.
Решение принимается в зависимости от определенных условий, опре- деляемых конкретной командой перехода. Процессор поддерживает 18 команд условного перехода, позволяющих проверить: ⅜ отношение между операндами со знаком (больше или меньше); s отношение между операндами без знака (выше или ниже)2; ® состояниями арифметических флагов ZF, SF, CF, OF, PF (но не AF). Команды условного перехода имеют одинаковый синтаксис: jcc метка_перехода Как видно, мнемокод всех команд начинается с символа «j» — от слова jump (прыжок). Вместо символов «сс» указывается конкретное условие, анализируе- мое командой. Что касается операнда метка_перехода, то он определяет метку пе- рехода, которая может находиться только в пределах текущего сегмента кода; меж- сегментной передачи управления в условных переходах не допускается. В связи с этим отпадает вопрос о модификаторе, который присутствовал в синтаксисе ко- манд безусловного перехода. В ранних моделях процессора (8086, 80186 и 80286) [10] команды условного перехода могли осуществлять только короткие переходы — на расстояние от -128 до +127 байт от команды, следующей за командой условного перехода. Начиная с процессора 80386 это ограничение снято, но, как видите, только в пределах текущего сегмента кода. Для того чтобы принять решение о том, куда будет передано управление ко- мандой условного перехода, предварительно должно быть сформировано условие, на основании которого должно приниматься решение. Источниками такого усло- вия могут быть: ffi любая команда, изменяющая состояние арифметических флагов; s команда СМР, сравнивающая значения двух операндов; S состояние регистра ЕСХ/СХ. Обсудим эти варианты, чтобы разобраться с тем, как работают команды услов- ного перехода.
<< | >>
Источник: В. И. Юров. Assembler. Учебник для вузов. 2-е изд. 2003

Еще по теме Условные переходы:

  1. § 41 Выдача купчей от крепостных дел. – Несостоявшаяся купчая. – Приобретение вотчинного права купчею по римскому праву. – Переход права по купчей у нас. – Отмена и уничтожение купчей. – Условная продажа. – Историческое право выкупа. – Двухлетний срок для спора о купчей крепости
  2. § 47 Дарение по русскому закону. – Форма. – Ограничение права на дарение. – Совершение и принятие дара. – Поворот дара к дарителю. – Переход права собственности на дар. – Дар условный. – Дар противозаконный. – Отличие дарения от завещания. – Дарение на случай смерти
  3. ПЕРЕХОД ЦИФР «22 — 4». ХАРАКТЕРИСТИКИ ПЕРЕХОДА
  4. ПЕРЕХОД ЦИФР «8 — 11», ХАРАКТЕРИСТИКИ ПЕРЕХОДА
  5. ПЕРЕХОД ЦИФР «6 — 7». ХАРАКТЕРИСТИКИ ПЕРЕХОДА
  6. ТОРМОЖЕНИЕ УСЛОВНОЕ
  7. РЕФЛЕКС УСЛОВНЫЙ: ГЕНЕРАЛИЗАЦИЯ
  8. РЕФЛЕКС УСЛОВНЫЙ
  9. ГРУППА УСЛОВНАЯ
  10. § 29 Передача и переход прав по обязательствам. – Римская конструкция права передачи. – Облегчение передачи новейшим законодательством. – Передаточная надпись. – Ограничения передачи. – Действие передачи. – Ответственность передатчика и права приобретателя. – Вступление в право кредитора или суброгация. – Русский закон передачи. – Передача заемных писем. – Переход требований к кредиторам.
  11. ГЕНЕРАЛИЗАЦИЯ РЕФЛЕКСА УСЛОВНОГО
  12. СПЕЦИАЛИЗАЦИЯ РЕФЛЕКСА УСЛОВНОГО
  13. 5. Условные сделки
  14. НАУЧЕНИЕ УСЛОВНО-РЕФЛЕКТОРНОЕ
  15. РЕФЛЕКС УСЛОВНЫЙ: СПЕЦИАЛИЗАЦИЯ
  16. Условная любовь
  17. Статья 81. Условно-досрочное освобождение от отбывания наказания