Команди логічних операцій
Команди логічних операцій дозволяють виконувати
стандартні логічні операції над байтами, такі, як логічне
множення (І), логічне додавання (АБО), операцію «виключне
АБО», а також обчислення зворотного (доповнення до одиниці)
та додаткового (доповнення до двох) кодів числа. До цієї групи
також можна віднести команди скидання/встановлення регістрів
та команду перестановки тетрад. Операції виконуються між
регістрами загального призначення або між РЗП та константою;
результат зберігається в РЗП.
AND Rd,Rr – виконує операцію «Логічне І» між вмістом
регістрів Rd та Rr. Результат зберігається у регістрі Rd.
ANDI Rd,K – виконує операцію «Логічне І» між вмістом
регістра Rd та 8-розрядним числом K. Результат зберігається у
регістрі Rd. Цю команду можна застосовувати тільки зі старшою
половиною РЗП (з адресами 16…31).
EOR Rd,Rr – виконує операцію «Виключне АБО» між
регістрами Rd та Rr. Результат зберігається у регістрі Rd.
OR Rd,Rr – виконує операцію «Логічне АБО» між регістрами
Rd та Rr. Результат зберігається у регістрі Rd.
ORI Rd,K – виконує операцію «Логічне АБО» між регістром
Rd та 8-розрядним числом K. Результат зберігається у регістрі Rd.
Цю команду можна застосовувати тільки зі старшою половиною
РЗП (з адресами 16…31).
COM Rd – обчислює зворотний код числа, який знаходиться в
регістрі Rd. Результат зберігається у регістрі Rd.
NEG Rd – обчислює додатковий код числа, який знаходиться
в регістрі Rd. Результат зберігається у регістрі Rd.
CLR Rd – скидає усі розряди регістра Rd шляхом виконання
операції «Виключне АБО» регістра Rd з самим собою.
SER Rd – установлює усі розряди регістра Rd. Цю команду
можна застосовувати тільки зі старшою половиною РЗП (з
адресами 16…31).
TST Rd – перевіряє вміст регістра Rd на нульове або від’ємне
значення, шляхом виконання операції «Логічне І» регістра Rd з
самим собою. Вміст регістра Rd не змінюється.
SWAP Rd – команда виконує перестановку старшої та
молодшої тетради вмісту регістра Rd.