Последний уровень раздела предыдущего изложения   Текущий уровень изложения предыдущего раздела   Текущий уровень изложения следующего раздела   Первый уровень изложения следующего раздела   Уровень:


Команды логическических операций микроконтроллера -8051

В этой группе 25 команд, их краткое описание приведено в таблице. Нетрудно видеть, что эти команды позволяют выполнять операции над байтами: логическое И (/ ), логическое ИЛИ ( /), исключающее ИЛИ ((+)), инверсию (NOT), сброс в нулевое значение и сдвиг. Команды, оперирующие отдельными битами, описаны далее.

В таблице также указаны тип команды (Т) в соответствии с таблицей, ее длина в байтах (В) и время выполнения в машинных циклах (С)


 Мнемокод  КОП  T B С  Описание
ANL A, Rn 01011rrr 1 1 1 (A) <- (A) / (Rn)
ANL A, ad 01010101 3 2 1 (A) <- (A) / (ad)
 ANL A, @Ri  01010111 1 1 1 (A) <- (A) / ((Ri))
ANL A, #d 01010100 2 2 1 (A) <- (A) / #d
ANL ad, A 01010010 3 2 1 (ad) <- (ad) /( A)
ANL ad, #d 01010011 7 3 2 (ad) <- (ad) / #d
ORL A, Rn 01001rrr 1 1 1 (A) <- (A) / (Rn)
ORL A, ad 01000101 3 2 1 (A) <- (A) / (ad)
ORL A, @Ri 0100011i 1 1 1 (A) <- (A) /( (Ri)
ORL A, #d  01000100   2 2 1  (A) <- (A) / #d
ORL ad, A 01000010 3 2 1 (ad) <- (ad) / A
ORL ad, #d 01000011 7 3 2 (ad) <- (ad) / #d
XRL A, Rn 01101rrr 1 1 1 (A) <- (A) (+) (Rn)
XRL A, ad 01100101 3 2 1 (A) <- (A) (+) (ad)
XRL A, @Ri 0110011i 1 1 1 (A) <- (A) (+) ((Ri))
XRL A, #d 01100100 2 2 1 (A) <- (A) (+) #d
XRL ad, A 01100010 3 2 1 (ad) <- (ad) (+) A
XRL ad, #d 01100011 7 3 2 (ad) <- (ad) (+) #d
CLR A 11100100 1 1 1 (A) <- 0
CPL A 11110100 1 1 1 (A) <- NOT(A)
SWAP A 11000100 1 1 1 (A0-3) <-> (A4-7)
RL A 00100011 1 1 1 Циклический сдвиг влево
RLC A 00110011 1 1 1 Сдвиг влево через перенос
RR A 00000011 1 1 1 Циклический сдвиг вправо
RRC A 00010011 1 1 1  Сдвиг вправо через перенос