Программирование на Ассемблере для персональных компьютеров. Садовой Н.Н - 32 стр.

UptoLike

Составители: 

32
Инструкция 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.
4.2. Примеры использования логических команд
1. Установить 3 и 0 биты в регистре аl, остальные биты не изменять.
or al, 00001001b
2. Сбросить 4 и 6 битвы в регистре al, остальные биты не изменять.
and al, 10101111b
3. Инвертировать 2 и 4 биты в регистре al, остальные биты не изменять.
     Инструкция 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.

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

1.    Установить 3 и 0 биты в регистре аl, остальные биты не изменять.
or al, 00001001b
2.    Сбросить 4 и 6 битвы в регистре al, остальные биты не изменять.
and al, 10101111b
3.    Инвертировать 2 и 4 биты в регистре al, остальные биты не изменять.

                                                                            32