Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Команды циклического сдвига через флаг переноса CF



К командам простого циклического сдвига относятся:

rol перанд, счетчик_сдвигов — циклический сдвиг влево (Rotate Left). Содержимое операнда сдвигается влево на количество битов, определяемое операндом счетчик_сдвигов. Сдвигаемые влево биты записываются в тот же операнд справа.

ror операнд, счетчик_сдвигов — циклический сдвиг вправо (Rotate Right). Содержимое операнда сдвигается вправо на количество битов, определяемое операндом счетчик_сдвигов. Сдвигаемые вправо биты записываются в тот же операнд слева.

К командам циклического сдвига через флаг переноса CF относятся:

rcl операнд, счетчик_сдвигов — циклический сдвиг влево через перенос (Rotate through Carry Left). Содержимое операнда сдвигается влево на количество бит, определяемое операндом счетчик_сдвигов. Сдвигаемые биты поочередно становятся значением флага переноса CF;

rcr операнд, счетчик_сдвигов — циклический сдвиг вправо через перенос (Rotate through Carry Right).

Содержимое операнда сдвигается вправо на количество битов, определяемое операндом счетчик_сдвигов. Сдвигаемые биты поочередно становятся значением флага переноса CF.

bcd_dig dw 0905h; описание неупакованного BCD-числа 95

mov ax,bcd_dig; пересылка

shl ah, 4; сдвиг влево

add al,ah; сложение для получения результата al=95h

56. Ассемблерные команды условного и безусловного перехода. Состояние флагов. Пример программы.

Синтаксис команды безусловного перехода без сохранения информации о точке возврата:

jmp [модификатор] адрес_перехода

Здесь «адрес_перехода» представляет метку или адрес области памяти, в которой находится указатель перехода.

Процессор поддерживает 18 команд условного перехода, позволяющих проверить:

отношение между операндами со знаком (больше или меньше);

отношение между операндами без знака (выше или ниже);

состояниями арифметических флагов ZF, SF, CF, OF, PF (но не AF).

Команды условного перехода имеют одинаковый синтаксис:

jcc метка_перехода

Мнемокод всех команд начинается с символа «j» — от слова jump (прыжок). Вместо символов «сс» указывается конкретное условие, анализируе­мое командой. Что касается операнда метка_перехода, то он определяет метку перехода, которая может находиться только в пределах текущего сегмента кода; меж­сегментной передачи управления в условных переходах не допускается.

Для того чтобы принять решение о том, куда будет передано управление командой условного перехода, предварительно должно быть сформировано условие, на основании которого должно приниматься решение. Источниками такого условия могут быть:

Команда сравнения СМР (СоМРаге) имеет тот же принцип работы, что и команда вычитания SUB. Команда СМР так же, как и команда SUB, выполняет вычитание операндов и по результатам сравнения устанавливает флаги. Единственное, чего она не делает — это не записывает резуль­тат вычитания на место первого операнда.

Синтаксис команды СМР: cmp операнд_1, операнд_2

Флаги, устанавливаемые командой СМР, можно анализировать специальными командами условного перехода.





Дата публикования: 2014-11-03; Прочитано: 530 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...