Основы арифметики цифровых процессоров. Вашкевич Н.П - 57 стр.

UptoLike

56
ция сложения «по модулю 2» содержимого регистров Р1 и Р2 дает
следующий результат:
Р
1
=
0
0
0
1
1
0
1
0
Р
2
=
0
0
1
1
0
1
0
1
^
Р2
0
0
1
0
1
1
1
1
SF=0; ZF=0. Так как флаг ZF=0, операнды в регистрах не равны.
Пример 2.
Пусть в восьмиразрядном регистре Р1 находится опе-
ранд 65
(8)
, а в регистре Р2 – операнд 65
(8)
. Тогда поразрядная опера-
ция сложения «по модулю 2» содержимого регистров Р1 и Р2 дает
следующий результат:
Р1=
0
0
1
1
0
1
0
1
Р2=
0
0
1
1
0
1
0
1
^
Р2
0
0
0
0
0
0
0
0
SF=0; ZF=1. Так как флаг ZF=1, операнды в регистрах равны.
Двухместная (бинарная) операция поразрядная конъюнкция.
В такой операции над каждыми битами двух операндов, имеющих
одинаковый вес, выполняется булева функцияконъюнкция.
x
y
y=x
&
y
0
0
0
0
1
0
1
0
0
1
1
1
Эта операция используется для выделения (сохранения) заданных
битов операнда, а остальные биты устанавливаются в 0. Рассмотрим
пример.
Пусть в восьмиразрядном регистре Р1 находится операнд 65
(8)
.
Нужно выделить левые два и правые три бита операнда. Тогда фор-
мируется так называемая маска (М), которая содержит 1 в сохраняе-
мых битах и 0 в остальных. Поразрядная конъюнкция Р1 и М дает
следующий результат:
Р1=
0
0
1
1
0
1
0
1
М
=
1
1
0
0
0
1
1
1
ция сложения «по модулю 2» содержимого регистров Р1 и Р2 дает
следующий результат:
     Р1= 0 0 0 1 1 0 1 0
     Р2= 0 0 1 1 0 1 0 1
    Р1^Р2 0 0 1 0 1 1 1 1
   SF=0; ZF=0. Так как флаг ZF=0, операнды в регистрах не равны.
   Пример 2. Пусть в восьмиразрядном регистре Р1 находится опе-
ранд 65(8), а в регистре Р2 – операнд 65(8). Тогда поразрядная опера-
ция сложения «по модулю 2» содержимого регистров Р1 и Р2 дает
следующий результат:
     Р1= 0 0 1 1 0 1 0 1
     Р2= 0 0 1 1 0 1 0 1
    Р1^Р2 0 0 0 0 0 0 0 0
   SF=0; ZF=1. Так как флаг ZF=1, операнды в регистрах равны.
   Двухместная (бинарная) операция – поразрядная конъюнкция.
В такой операции над каждыми битами двух операндов, имеющих
одинаковый вес, выполняется булева функция – конъюнкция.
    x y y=x&y
    0 0          0
    0 1          0
    1 0          0
    1 1          1
   Эта операция используется для выделения (сохранения) заданных
битов операнда, а остальные биты устанавливаются в 0. Рассмотрим
пример.
   Пусть в восьмиразрядном регистре Р1 находится операнд 65(8).
Нужно выделить левые два и правые три бита операнда. Тогда фор-
мируется так называемая маска (М), которая содержит 1 в сохраняе-
мых битах и 0 – в остальных. Поразрядная конъюнкция Р1 и М дает
следующий результат:
     Р1=      0 0 1 1 0 1 0 1
     М=       1 1 0 0 0 1 1 1

                                 56