Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2024-02-15 | 25 |
5.00
из
|
Заказать работу |
|
|
1. Логические команды
2. Команды сдвига и циклического сдвига
Команды манипулирования битами.
Эти команды манипулируют группами битов в регистрах или ячейках памяти. Они разделены на три группы: логические команды, команды сдвига и команды циклического сдвига.
Логические команды
Эти команды названы логическими потому, что они действуют по правилам формальной логики, а не арифметики. Например, логическое утверждение "если А истинно и В истинно, то С истинно" находит свое отражение в команде AND (и) микропроцессора 8x86, которая применяет его к соответствующим битам двух операндов.
Точнее говоря, команда AND полагает равным 1 все те биты операнда приемника, в позициях которых содержится 1 у обоих операндов. А в те биты приемника, в позициях которых содержится любая другая комбинация значении (или 00, или О и 1), полагаются равными нулю.
Так как логические операции манипулируют битами операндов, то обычно при записи значений таких операндов используют шестнадцатеричную систему счисления. Логические команды микропроцессора 8x86 могут оперировать байтами или словами, поэтому обычно приходится иметь дело с двузначными или четырехзначными шестнадцатеричными числами.
Логические команды OR , AND и XOR .
Операндами команд AND, OR и XOR могут быть байты или слова. В этих командах можно сочетать два регистра, регистр с ячейкой памяти или непосредственное значение с регистром или ячейкой памяти.
Команда AND маскирует (обнуляет) некоторые биты, после чего можно выполнить дальнейшую обработку остальных битов. Как уже упоминалось, в каждой позиции бита, где оба операнда содержат 1, операнд-приемник также будет содержать 1. В тех же позициях, где операнды имеют любую другую комбинацию значений, операнд-приемник будет содержать 0. Запомните, что при исполнении команды AND биты операнда-приемника становятся, равны 0 всюду, где операнд-источник содержит 0, и сохраняются там, где операнд-источник содержит 1.
|
Приведем несколько примеров команд AND:
AND АХ,ВХ ;Выполнить AND над двумя регистрами
AND AL,MEM_BYTE ;Выполнить AND над регистром и ячейкой памяти
AND MEM_BYTE ; или наоборот
AND BL,1101В ;Выполнить AND над константой и регистром
AND TABLE[BX],MASK3 ; или ячейкой памяти
Рассмотрим следующий пример применения команды AND. Пусть порт 200 соединен с 16-битовым регистром состояния внешнего устройства системы и бит 6 показывает, включено (1) или выключено (0) устройство. Если Ваша программа может продолжать работу только в случае, когда устройство включено, то она должна содержать следующий цикл:
CHK_PWR: IN AХ,200 ;Прочитать состояние устройства
AND AX,1000000B ;Изолировать индикатор включения
JZ CHK_PWR ;Подождать включения питания, ... ; а затем продолжить работу
Команда JZ (jump if zero - перейти если нуль), которая нами еще не рассматривалась, заставляет микропроцессор 8x86 вернуться к команде IN с меткой CHK_PWR, если флаг нуля ZF равен 1, и перейти к следующей команде в противном случае. В нашем примере флаг ZF равен 1 только в том случае, когда индикатор включения (бит 6) равен 1, так как команда AND обнуляет все остальные биты регистра АХ.
Команда OR полагает равным 1 те биты операнда-приемника, в позициях которых хотя бы один из операндов содержит 1. Эта команда обычно используется для принудительного присваивания 1 заданным битам. Например, команда
OR BX,OCOOH
полагает два старших бита (14 и 15) регистра ВХ равными 1 и оставляет другие биты не измененными.
Команда XOR используется, если надо выяснить, в каких битах значения операндов различаются, или если надо обратить состояния заданных битов. Команда XOR полагает равным 1 все те биты приемника, в позициях которых операнды имеют различные значения, иначе говоря, те биты, в позициях которых один из операндов имеет значение-0, а другой - 1. Если оба операнда содержат в данной позиции либо 0, либо 1, то команда XOR обнуляет этот бит приемника.
Например, команда
XOR BX,0C000H
обращает состояния двух старших битов регистра ВХ (14 и 15) и сохраняет остальные биты неизмененными.
|
|
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!