Cтраница 4
Содержимое аккумулятора сдвигается влево на одну позицию. Содержимое самого старшего бита заносится в младший бит и бит флага переноса. [46]
Содержимое аккумулятора сдвигается на одну позицию вправо. Содержимое младшего бита заносится в самый старший бит и бит флага переноса. [47]
Команды STC ( set Carry flag - установить флаг переноса) и CLC ( clear Carry flag - обнулить флаг переноса) переводят флаг CF в состояния 1 и 0 соответственно. Они полезны для-установки нужного состояния флага CF перед исполнением команд циклического сдвига с флагом переноса RCL и RCR. Команда CMC ( complement Carry flag - обратить флаг переноса) переводит флаг CF в состояние О, если он имел состояние 1, и наоборот. [48]
При выполнении всех указанных команд, если результат равен нулю, триггер флага нуля ( флаг Z) устанавливается в состояние 1, если результат не равен нулю - в состояние О. При выполнении операции ADD R и INR R, если происходит переполнение, устанавливается флаг переноса ( флаг С), при вычитании, если содержимое аккумулятора меньше содержимого регистра - флаг S. Использование флагов происходит обычно при выполнении операций условного перехода. [49]
Команды циклического сдвига аналогичны командам сдвига, за исключении того, что не уничтожают, а сохраняют биты, смещенные за пределы операнда. Команды циклического сдвига влево ROL и вправо ROR вводят эти биты в операнд с противоположного конца; команды циклического сдвига с флагом переноса влево RCL и вправо RCR помещают смещенный за пределы операнда бит во флаг CF и вводят предыдущее значение флага CF в операнд. [50]
Например, при логическом сдвиге вправо в старшем разряде кода операнда устанавливается нуль, а младший разряд записывается в качестве флага переноса в регистр состояния процессора. А при арифметическом сдвиге вправо значение старшего разряда сохраняется прежним ( нулем или единицей), младший разряд также записывается в качестве флага переноса. [51]
Над содержимыми ячейки памяти, адрес которой содержится в регистрах H, L, и аккумулятора выполняется логическая операция И. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [52]
Над содержимым аккумулятора и второго байта команды выполняется логическая операция И. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [53]
Над содержимым регистра г и аккумулятора выполняется логическая операция ИСКЛЮЧАЮЩЕЕ ИЛИ. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [54]
Над содержимым ячейки памяти, адрес которой содержится в регистрах H, L, и содержимым аккумулятора выполняется операция ИСКЛЮЧАЮЩЕЕ ИЛИ. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [55]
Над содержимым аккумулятора и второго байта команды выполняется операция ИСКЛЮЧАЮЩЕЕ ИЛИ. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [56]
Над содержимым ячейки памяти, адрес которой определен в регистрах H, L, и аккумулятора выполняется логическая операция ИЛИ. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [57]
Над содержимым второго байта команды и содержимым аккумулятора выполняется логическая операция ИЛИ. Результат помещается в аккумулятор. Сбрасываются флаги переноса CY и вспомогательного переноса АС. [58]
Команды STC ( set Carry flag - установить флаг переноса) и CLC ( clear Carry flag - обнулить флаг переноса) переводят флаг CF в состояния 1 и 0 соответственно. Они полезны для-установки нужного состояния флага CF перед исполнением команд циклического сдвига с флагом переноса RCL и RCR. Команда CMC ( complement Carry flag - обратить флаг переноса) переводит флаг CF в состояние О, если он имел состояние 1, и наоборот. [59]