4893

Применение логических инструкций

Доклад

Информатика, кибернетика и программирование

Применение логических инструкций Логические команды служат для сброса или установки отдельных бит в байте или слове. Они включают булевы операторы НЕ, И, ИЛИ, исключающее ИЛИ и операцию тестирования, которая устанавливает флаги, но не изменяет значе...

Русский

2012-11-28

43 KB

2 чел.

Применение логических инструкций

Логические команды служат для сброса или установки отдельных бит в байте или слове. Они включают булевы операторы НЕ, И, ИЛИ, исключающее ИЛИ и операцию тестирования, которая устанавливает флаги, но не изменяет значения своих операндов.

Логические инструкции

not dst

Инструкция not инвертирует все биты байта или слова.

and dst, src

Инструкция and выполняет операции логическое И двух операндов (байтов или слов) и возвращает результат в операнд-приемник. Бит результата устанавливается в 1, если установлены в 1 оба соответствующих ему бита операндов, и устанавливаются в 0 противном случае.

or dst, src

Инструкция or выполняет операции логическое ИЛИ двух операторов (байтов или слов) и помещает результат на место операнда-приемника. Бит результата устанавливается в 1, если равен 1 хотя бы один из двух соответствующих ему битов операндов и устанавливается в 0 в противном случае.

xor dst, src

Инструкция xor выполняет операцию логическое исключающее ИЛИ двух операндов и помещает результат на место операнда-приемника. Бит результата устанавливается в 1, если соответствующие ему биты операндов имеют противоположные значения, и устанавливается в 0 в противном случае.

test dst, src 

Инструкция test выполняет логическое И двух операндов (байтов или слов), модифицирует флаги, но результат не возвращает, т.е. операнды не изменяются.

В таблице 4.1. приведены значения регистра флагов, устанавливаемые логическими командами.

Таблица 4.1

Логические инструкции

Мнемокод

Флаги

Действие

Код

Операнды

O

S

Z

A

P

C

and

dst, src

0

x

x

u

x

0

логическое И

or

dst, src

0

x

x

u

x

0

логическое ИЛИ

xor

dst, src

0

x

x

u

x

0

логическое исключающее ИЛИ

not

Dst

-

-

-

-

-

-

логическое НЕТ

test

dst, src

0

x

x

u

x

0

логическое И без изменения dst

Примечание:  

-

флажок не модифицируется;

х

Устанавливается или сбрасывается в соответствии с результатом;

u

не определен;

0

Сбрасывается в 0.

  1.  Примеры использования логических команд

Установить 3 и 0 биты в регистре аl, остальные биты не изменять.

or al, 00001001b

Сбросить 4 и 6 битвы в регистре al, остальные биты не изменять.

and al, 10101111b

Инвертировать 2 и 4 биты в регистре al, остальные биты не изменять.

xor al, 00010100b

Перейти на метку LAB, если установлен 4 бит регистра al, в противном случае продолжить выполнение программы.

test al, 00010000b

jnz LAB

продолжаем

. . .

LAB:

Посчитать число единиц в регистре al, рассматривая байт, как набор бит.

mov cx, b   ; число сдвигов

xor bl, bl   ; обнуление BL

LL:  shl al, 1   ; сдвиг влево на один разряд

jnc NO    ; переход, если нет переноса

inc bl    ; иначе увеличить BL

NO:  loop LL   ; возврат, если cx 0


 

А также другие работы, которые могут Вас заинтересовать

58859. Створення коміксу засобами Paint 1.73 MB
  Уолт Дісней великий кінематографіст фундатор цілого художнього напряму в анімації Уолт Дісней народився не в Чікаго як було прийнято вважати довгі роки а в Іспанії у селищі Мохакар в Андалусії.
58860. Твоя країна – Україна. Символи держави 50.5 KB
  Ознайомити з найвідомішими містами найбільшими річками та озерами України. Розширити та уточнити знання учнів про державні символи України. Обладнання: Карта України костюми компютер виставка книг. Наш урок присвячений Україні її символам найвідомішим містам та найбільшим річкам України.
58861. Координатна пряма, цілі і раціональні числа 167.5 KB
  Мета уроку: узагальнити і систематизувати відомості учнів про види чисел; перевірити вміння визначати координати вказаних точок та будувати на координатній прямій точки за вказаними координатами; знаходити значення виразів що містять числа під знаком модуля...
58862. У країні міфів 115.5 KB
  Міфологія – це зібрання переказів про богів та героїв Грецький народ, поділений на багато племен, по- різному оповідав про свої божества. У кожному місті, селі чи общині були різні версії походження світу, народження богів.
58863. Краса мирного життя 676 KB
  Учитель: Доброго дня любі друзі та шановні гості Ми раді вітати вас на черговому засіданні лабораторії Творчість тема якого Краса мирного життя. Отже сьогодні ми з вами будемо говорити про найяскравіші моменти мирного життя.
58864. Творча лабораторія 167.5 KB
  Усі ми в дитинстві читали багато цікавих казок про добрих фей та могутніх чаклунів які творили незвичні чудеса але в житті як відомо ні фей ні чаклунів не існує.
58865. Вправи на закріплення вивчених таблиць множення і ділення. Розв’язування задачі на кратне порівняння двох часток за поданим планом 36.5 KB
  Виконуючи математичні завдання ви познайомитесь із рослинними символами України з яких ми сплетемо вінок. До кінця уроку ми виплетемо вінок який покладемо у наш класний куточок символів України.
58866. То був страшний навмисний голод 41 KB
  Розкрити перед учнями одну з найстрашніших сторінок українського народу великий голодомор 1933 року; вчити учнів самостійно висловлювати свої думки з приводу прочитаного; виховувати непримиренність до чужої волі над рідним народом.
58867. Їжа. Продукти харчування 154 KB
  How do you do, my dears? Are you in a good mood? Are you ready for the lesson? We have got an interesting and unusual lesson today. It will be a competition to see who is the wisest, the most attentive and the most active.