Операции с битами данных
Логические операции.
Команды условного и безусловного перехода.
Команда
| Описание
| Количество байт в коде
| Время выполения
|
ACALL addr11
| Вызов подпрограммы в пределах текущей страницы памяти 2 КБайта
|
|
|
LCALL addr16
| Вызов подпрограммы в пределах всей памяти программ
|
|
|
RET
| Выход из подпрограммы
|
|
|
RETI
| Выход из обработчика прерывания, сбрасываются флаги прерывания
|
|
|
AJMP addr11
| Безусловный переход в пределах 2 КБайт страницы памяти
|
|
|
LJMP addr16
| Безусловный переход в пределах всей области памяти
|
|
|
SJMP rel
| Безусловный относительный переход в пределах 255 команд.
|
|
|
JMP @A+DPTR
| Безусловный переход по абсолютному адресу памяти.
|
|
|
JZ rel
| Условный переход (если A=0) по метке.
|
|
|
JNZ rel
| Условный переход (если A не равно 0) по метке
|
|
|
CJNE A,dirct,rel
| Переход но метке если аргументы не равны.
|
|
|
CJNE A,#data,rel
| Переход но метке если аргументы не равны.
|
|
|
CJNE Rn,#data,rel
| Переход но метке если аргументы не равны.
|
|
|
CJNE @Ri,#data,rel
| Переход но метке если аргументы не равны.
|
|
|
DJNZ Rn,rel
| Уменьшение на 1 регистра и переход по метке если регистр не равен 0.
|
|
|
DJNZ direct,rel
| Уменьшение на 1 аргумента и переход по метке если аргумент не равен 0.
|
|
|
NOP
| Пустой цикл (переход на следующую команду)
|
|
|
Команда
| Описание
| Количество байт в коде
| Время выполения
|
ANL A,source
| Логическая побитовая операция “И”
| 1,2
|
|
ANL A,#data
| Логическая побитовая операция “И”
|
|
|
ANL direct,A
| Логическая побитовая операция “И”
|
|
|
ANL direct,#data
| Логическая побитовая операция “И”
|
|
|
ORL A,source
| Логическая побитовая операция “ИЛИ”
| 1,2
|
|
ORL A,#data
| Логическая побитовая операция “ИЛИ”
|
|
|
ORL direct,A
| Логическая побитовая операция “ИЛИ”
|
|
|
ORL direct,#data
| Логическая побитовая операция “ИЛИ”
|
|
|
XRL A,source
| Логическая побитовая операция логическое исключающее “ИЛИ”
| 1,2
|
|
XRL A,#data
| Логическая побитовая операция логическое исключающее “ИЛИ”
|
|
|
XRL direct,A
| Логическая побитовая операция логическое исключающее “ИЛИ”
|
|
|
XRL direct,#data
| Логическая побитовая операция логическое исключающее “ИЛИ”
|
|
|
CLR A
| Обнулить биты аккумулятора
|
|
|
CPL A
| Инвертировать биты аккумулятора
|
|
|
RL A
| Сдвиг битов аккумулятора в лево
|
|
|
RLC A
| Сдвиг битов аккумулятора в лево через C
|
|
|
RR A
| Сдвиг битов аккумулятора в право
|
|
|
RRC A
| Сдвиг битов аккумулятора в право через C
|
|
|
SWAP A
| Обмен полубайтов аккумулятора
|
|
|
Команда
| Описание
| Количество байт в коде
| Время выполения
|
CLR C
| Обнулить бит C (C:=0)
|
|
|
CLR bit
| Обнулить бит (bit:=0)
|
|
|
SETB C
| Установить бит C (C:=1)
|
|
|
SETB bit
| Установить бит (bit:=1)
|
|
|
CPL C
| Инвертировать бит C
|
|
|
CPL bit
| Инвертировать бит
|
|
|
ANL C,bit
| Логическая операция “И” бита C и аргумента
|
|
|
ANL C,/bit
| Логическая операция “И” бита C и инверсного второго аргумента
|
|
|
ORL C,bit
| Логическая операция “ИЛИ” бита C и аргумента
|
|
|
ORL C,/bit
| Логическая операция “ИЛИ” бита C и инверсного второго аргумента
|
|
|
MOV C,bit
| Перемещение значения второго аргумента в бит C
|
|
|
MOV bit,C
| Перемещение значения бита C в первый аргумент
|
|
|
JC rel
| Переход по метке если бит C установлен (C=1)
|
|
|
JNC rel
| Переход по метке если бит C не установлен (C=0)
|
|
|
JB bit,rel
| Переход по метке если бит установлен (bit=1)
|
|
|
JNB bit,rel
| Переход по метке если бит не установлен (bit=0)
|
|
|
JBC bit,rel
| Переход по метке и обнуление бита если установлен
|
|
|