Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Дисциплины:
2024-02-15 | 31 |
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) и сохраняет остальные биты неизмененными.
|
|
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!