КАТЕГОРИИ: Архитектура-(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) |
TEST операнд_1,МАСКА
ПРОВЕРКА СОСТОЯНИЯ ЗАДАННОГО БИТА Маска) Проверяемый операнд) XOR AX, 0000 1101 1110 0101 B MOV AX, 0FD96h XOR операнд_1,МАСКА ИНДИКАЦИЯ НЕСОВПАДАЮЩИХ БИТОВ Маска) Преобразуемый операнд) XOR AX, 0000 1101 1110 0101 B MOV AX, 0FD96h XOR операнд_1,МАСКА ИНВЕРТИРОВАНИЕ битов Маска) Преобразуемый операнд) AND AX, 0000 1101 1110 0101 B MOV AX, 0FD96h AND операнд_1,МАСКА СБРОС битов в 0 Маска) Преобразуемый операнд) OR AX, 0000 1101 1110 0101 B MOV AX, 0FD96h ПРИМЕР OR операнд_1,МАСКА УСТАНОВКА битов в 1 КОМАНДА операнд1, операнд2 Что обычно делают логическими командами ПРИЕМЫ ПРИМЕНЕНИЯ ЛОГИЧЕСКИХ КОМАНД 0000 0010 0110 1001 NOT AX MOV AX, 0FD96h ПРИМЕР NOT операнд Команда логического отрицания NOT TEST AX, 0000 1101 1110 0101 B MOV AX, 0FD96h ПРИМЕР TEST операнд_1,операнд_2 XOR AX, 0000 1101 1110 0101 B MOV AX, 0FD96h ПРИМЕР XOR операнд_1,операнд_2 Логическое исключающее сложение XOR OR AX, 0000 1101 1110 0101 B MOV AX, 0FD96h ПРИМЕР OR операнд_1,операнд_2 Логическое сложение OR AND AX, 0000 1101 1110 0101 B MOV AX, 0FD96h ПРИМЕР 1111 1101 1001 0110 AND 0000 1101 1110 0101 --------------------------- 0000 1101 1000 0100 Записывается в первый операнд Команда выполняет поразрядно логическую операцию OR над битами операндов операнд_1 и операнд_2. Результат записывается на место операнда 1. 1111 1101 1001 0110 OR 0000 1101 1110 0101 --------------------------- 1111 1101 1111 0111 Записывается в первый операнд Команда выполняет поразрядно логическую операцию исключающего XOR над битами операндов операнд_1 и операнд_2. Результат записывается на место операнда 1. 1111 1101 1001 0110 XOR 0000 1101 1110 0101 --------------------------- 1111 0000 0111 0011 Записывается в первый операнд Команда TEST -«проверить» (через AND) Команда выполняет поразрядно логическую операцию AND над битами операндов операнд_1 и операнд_2. Операнды НЕ МЕНЯЮТСЯ. Меняются только флаги ZF, SF и PF 1111 1101 1001 0110 TEST 0000 1101 1110 0101 --------------------------- 0000 1101 1000 0100 никуда не пишется, ZF=1, SF=0, PF=1 Команда выполняет поразрядно инверсию битов операнда. Результат записывается в операнд. 1111 1101 1001 0110 После NOT это станет новым значением AX:
Отдельные требуемые биты в числах можно: А) Установить в 1; Б) Сбросить в 0; В) Инвертировать (был 0 - станет 1, было 1 - станет 0); Г) Проверить, какие биты не равны; Д) Проверить, какое значение они имеют (0? 1? Операнд2 записывается специальным образом и называется «маска». В операнде_1 единичными станут те биты, которые в маске равны 1. OR --------------------------- 1111 1101 1111 0111 Новое значение АХ В операнде_1 нулевыми станут те биты, которые в маске равны 0. AND --------------------------- 0000 1101 1000 0100 Новое значение АХ В операнде_1 инвертируются только те биты, которые в маске равны 1. XOR --------------------------- 1111 0000 0111 0011 Новое значение АХ В операнде_1 единичными станут только те биты, которые НЕ РАВНЫ соответствующим битам маски. XOR --------------------------- 1111 0000 0111 0011 Новое значение АХ Флаг ZF станет 1 только тогда, когда в операнде_1 имеет значение 0 бит, соответствующий единичному биту маски
ПРИМЕРЫ
КОМАНДЫ СКАНИРОВАНИЯ БИТОВ (начиная с ЦП i80486)
Дата добавления: 2014-01-07; Просмотров: 328; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |