Лекция: Команды логической обработки

В составе группы 4 двухместных логических операций над байтами:

ANA, ANI Логическое И

XRA, XRI Логическое ИСКЛЮЧАЮЩЕЕ ИЛИ

ORA, ORI Логическое ИЛИ

CMP, CPI Сравнение

В этих командах один из операндов содержится в аккумуляторе А, который одновременно служит приемником результата. Источником второго операнда служат:

1) регистр src;

2) ячейка памяти (HL);

3) константа, заданная непосредственно в команде.

Мнемоника Код Число циклов Число тактов Флаги: CY, Z, M, P, C, AC Содержание
ANA src 10100SSS 0+++0 A <- A & src
XRA src 10101SSS 0+++0 A <- A ^ src
ORA src 10110SSS 0+++0 A <- A | src
CMP src 10111SSS +++++ A == src
ANA M A6 0+++0 A <- A & (HL)
XRA M AE 0+++0 A <- A ^ (HL)
ORA M B6 0+++0 A <- A | (HL)
CMP M BE +++++ A == (HL)
ANI data E6 0+++0 A <- A & data
XRI data EE 0+++0 A <- A ^ data
ORI data F6 0+++0 A <- A | data
CPI data FE +++++ A == data
RLC +---- A7<-A6<-...<-A0<-A7
RRC 0F +---- A0<-A1<-...<-A7<-A0
RAL +---- A7<-A6<-...<-A0<-CY<-A7
RAR 1F +---- A0<-A1<-...<-A7<-CY<-A0
CMA 2E A <- !A
CMS 3E +---- CY <- !CY
STC 1---- CY <- 1

Логические операции выполняются поразрядно. Операция сравнения выполняется методом вычитания, но результат вычитания никуда не заносится, а операнды сохраняются без изменения.

Две команды STC и CMC дают возможность манипулировать флагом CY, устанавливая и инвертируя его.

Сброс флага CY может быть выполнен командой (При этом состояние флагов тоже изменяется):

ORA A; A <- A | A

Логические команды включают также и подгруппу сдвигов вправо (RRC, RAR) и влево (RLC, RAL). Определены операции циклического (RRC, RLC) и расширенного (RAR, RAL) сдвигов.

еще рефераты
Еще работы по информатике