Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Логические команды. Логические операции проводятся с битами операндов




Логические операции проводятся с битами операндов.

Существуют четыре команды, соответствующие логическим операциям:

“И” — “AND”, “ИЛИ” — “OR”, “ИСК. ИЛИ” — “XOR”,“НЕ” — “NOT”, а также команда “TEST”.

 

Команда AND

Формат команды:

AND <операнд1>, <операнд2>

операнд1 — приемник – можно использовать один из регистров общего назначения 8-ми или 16-ти разрядный, переменную в памяти, размерностью в байт или слово.

В качестве источника (операнд2) можно использовать то же самое, а также дополнительно константу, записываемую непосредственно в команде.

Нельзя использовать операции над операндами, одновременно расположенными в ячейках памяти, а также следует следить за размерностью операндов.

Результат операции записывается в нужной позиции в первый операнд, согласно логике работы команды AND:

бит результата равен 1 только в том случае, если соответствующие биты первого и второго операнда равны 1, в противном случае, соответствующий результат равен 0.

Команда устанавливает флаги согласно получаемому результату.

Применяется для выделения битов (если бит 2-го операнда установить в 1, то результат повторяет значение первого операнда), а также можно сбросить в 0 бит или группу битов, если в нужном месте во втором операнде использовать 0.

Команда OR

Формат команды:

OR <операнд1>, <операнд2>

Полностью соответствует предыдущей команде. Единственным отличием является таблица истинности: бит результата равен 1, если хотя бы один из соответствующих битов обоих операндов равен 1, противном случае — равен 0.

Команда XOR

Формат команды:

XOR <операнд1>, <операнд2>

Полностью соответствует предыдущей команде OR, за исключением таблицы истинности: бит результата равен 1, если биты операндов неравны, если биты операндов равны, результат равен 0. Поэтому такую операцию называют операцией неравнозначности и применяют для обнуления некоторого регистра, например, XOR AX,AX обнуляет быстрее и занимает меньше памяти, чем операция MOV AX,0.

Команда NOT

Формат команды: NOT <операнд>

Эта команда выполняет операцию поразрядного инвертирования каждого бита операнда (т.е. заменяет 0 на 1, а 1 на 0) — результат записывается на место единственного операнда. Отличается от предыдущих команд тем, что не меняет флаги микропроцессора.

Команда TEST

Формат команды: TEST <операнд1>, <операнд2>

Полностью соответствует команде AND, за исключением того, что результат логического умножения не запоминается, т.е. состояние операндов остается прежним, изменяются только флаги ZF, SF, PF, что дает возможность анализировать состояние отдельных битов операнда.

 

 




Поделиться с друзьями:


Дата добавления: 2014-11-09; Просмотров: 655; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.