<<
>>

Команды сдвига

Команды сдвига также обеспечивают манипуляции над отдельными битами опе- рандов, но иным способом, чем рассмотренные ранее логические команды. Все ко- манды сдвига перемещают биты в поле операнда влево или вправо, в зависимости от кода операции.
Все команды сдвига имеют одинаковую структуру: коп операнд,счетчик_сдвиrов Количество сдвигаемых разрядов (значение счетчик_сдвигов) может задаваться двумя способами: II статически — непосредственно во втором операнде; * динамически — в регистре CL перед выполнением команды сдвига. Исходя из размерности регистра CL, понятно, что значение счетчик_сдвигов мо- жет лежать в диапазоне от 0 до 255. Но на самом деле это не совсем так. В целях оптимизации процессор воспринимает только значения пяти младших битов счет- чика, то есть значение лежит в диапазоне от 0 до 31. В последних моделях процес- сора есть дополнительные команды, позволяющие делать 64-разрядные сдвиги. Мы их рассмотрим чуть позже. Все команды сдвига устанавливают флаг переноса CF. По мере сдвига битов за пределы операнда они сначала попадают во флаг переноса CF, устанавливая его равным значению очередного бита, оказавшегося за пределами операнда. Куда этот бит попадет дальше, зависит от типа команды сдвига и алгоритма программы. По принципу действия команды сдвига можно разделить на два типа: II команды линейного сдвига; к команды циклического сдвига.
<< | >>
Источник: В. И. Юров. Assembler. Учебник для вузов. 2-е изд. 2003

Еще по теме Команды сдвига:

  1. СДВИГ РИСКОВЫЙ
  2. МЕХАНИЗМ СДВИГА МОТИВА
  3. УПРАВЛЯЕМЫЙ "СДВИГ ПО ФАЗЕ"
  4. Определение команды.
  5. § 4.5. Деятельность команд в организации
  6. Признаки команды.
  7. Пример настройки и реабилитации в футбольной команде
  8. Работа с другими командами
  9. Четыре шага по созданию эффективной команды
  10. ШЕСТЬ СТУПЕНЕЙ НА ПУТИ СОЗДАНИЯ КОМАНДЫ.