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


 

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

69545. Основы управления интеллектуальной собственностью, курс лекций 365.5 KB
  Интеллектуальная собственность в последнее время стала одной из основных движущих сил развития общества. В большинстве стран мира сложилась крупная отрасль общественного производства – экономика интеллектуальной собственности.
69546. Соціологія, курс лекцій 1.25 MB
  Вивчення даного курсу допоможе сформувати у майбутніх фахівців соціологічне мислення і культуру, надасть їм необхідну допомогу в розумінні сутності й змісту складних соціологічних явищ і процесів, що відбуваються в сучасному ринковому суспільстві
69547. Видоутворення: основні способи і значення 125.5 KB
  Видоутворення – еволюційний процес утворення нових біологічних видів (з предкового). Вперше термін «видоутворення» або «кладогенез» був введений біологом Оратором Куком. З генетичної точки зору видоутворення - це процес перетворення генетично відкритих систем (внутрішньовидові форми) в генетично закриті (види).
69548. Функции и виды конфликтов 89.5 KB
  Конфликт часто сопровождается стрессом. При частых и эмоциональных напряженных конфликтах резко возрастает вероятность сердечно-сосудистых заболеваний, а также хронических нарушений функционирования желудочно-кишечного тракта.
69549. ГАЛЬВАНОМАГНІТНІ ЕФЕКТИ 530.5 KB
  Реакція твердих тіл, що проводять струм, на одночасну дію електричного і магнітного полів різноманітна. Можна спостерігати порушення електронейтральності, зміну провідності, виникнення градієнтів температури та ін.
69550. ТЕНЗОРЕЗИСТИВНИЙ ЕФЕКТ 292 KB
  Визначити відносну зміну опору при деформаціях стиску і розтягу кремнію. Тензорезистивный ефект в електронному кремнії У енергетичному просторі зони провідності кремнію є 6 еквівалентних мінімумів енергії розташованих на головних вісях оберненої решітки 100.
69551. Вивчення властивостей нелінійних діелектриків 83 KB
  На температурній залежності можна спостерігати максимуми проникності обумовлені фазовими переходами типу зсуву сегнетоелектричпа фаза зберігається і порядок безладдя перехід у параелектричну фазу. На польовій залежності можна спостерігати зростання і максимум...
69552. Оптичні властивості твердих тіл 126.5 KB
  Основна мета роботи дослідження спектра фундаментального і домішкового поглинання визначення ширини забороненої зони і глибини залягання домішок. Вивчити основні характеристики і механізми поглинання світла.
69553. ВИЗНАЧЕННЯ ДИФУЗІЙНОЇ ДОВЖИНИ КОМПЕНСАЦІЙНИМ МЕТОДОМ 124 KB
  Основна мета роботи практична реалізація фотомагнітного ефекту із метою визначення біполярної довжини і часу життя нерівноважних носіїв заряду методом компенсації фотомагнітного струму струмом фотопровідності.