WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     | 1 |   ...   | 4 | 5 || 7 | 8 |   ...   | 13 |

В этом операционном автомате из-за того, что есть только одна шина для ввода данных, операция умножения X*Y распадается на две операции: «посылка X» и «умножение на Y». Причем они выполняются последовательно друг за другом. На рис. 4.7 и 4.8 приведены граф-схемы алгоритмов этих операций.

Рис. 4.7. Алгоритм операции «посылка X» Рис. 4.8. Алгоритм операции «умножение на Y» 4.5.1. Алгоритм умножения целых беззнаковых чисел в формате с ФТ Рассмотрим алгоритм умножения целых беззнаковых чисел в формате с ФТ.

Ша г 1. Множимое записывается в регистр Р1 (операция «посылка X»).

Ш а г 2. Множитель записывается в Р2 (операция «умножение на Y»).

Ш а г 3. Регистр сумматора и флаг CF обнуляются. В счетчик тактов записывается значение, равное количеству разрядов регистра множителя.

Ш а г 4. Проверяется значение младшего бита регистра Р2. Если он равен 1, то к регистру сумматора (РСМ) прибавляется содержимое Р1.

Ш а г 5. Содержимое флага CF и РСМ циклически сдвигается вправо на один разряд (младший разряд регистра сумматора заносится во флаг CF).

Шаг 6. Содержимое флага CF и регистра Р2 сдвигается логически вправо на один разряд. Счетчик тактов уменьшается на 1.

Ш а г 7. Значение счетчика тактов сравнивается с 0. Если значение счетчика тактов не равно 0, то переход к шагу 4, иначе к шагу 8.

Ш а г 8. Устанавливается значение регистра флагов. Значение РСМ и Р2 последовательно переписываются в ОП.

Рассмотрим пример выполнения этого алгоритма.

Выполнить умножение операндов X и Y на восьмиразрядном процессоре. X=270(8), Y=71(8) (табл. 4.3). Обратите внимание, что при рассмотрении примера двойной рамкой выделяется значение младшего бита Р2, который анализируется на шаге 4.

Когда СЧТ=0, в регистрах РСМ и Р2 содержится произведение: в РСМ – старшая часть, а в Р2 – младшая часть. Выполним проверку:

X*Y=0010100011111000(2)=10100011111000(2)=24370(8).

2 7 x 7 — — — — — 2 7 2 4 1 — — — — — 2 4 3 7 Результат верен.

Таблица 4.Умножение беззнаковых операндов X*Y, где X = 270(8), Y= 71(8) CF PCM P2 CЧТ Комментарий * * * * * * * * * * * * * * * * * * * * * Исходное состояние CF:=0; РСМ:=0; Р2:=Y;

0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 0 0 СЧТ=0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 0 1 1 0 0 0 +Р0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 0 1 1 0 0 0 РСМ:=РСМ+Р0 0 1 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 0 0 (CF,PCM):=RС((CF,PCM),1) 0 (CF,P2):=RS((CF,P2),1) 0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 1 1 СЧТ:=СЧТ – 0 0 0 1 0 1 1 1 0 0 0 0 1 1 1 0 0 0 1 1 1 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 0 1 1 СЧТ:=СЧТ – 0 0 0 0 1 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 1 0 1 1 1 0 0 0 0 0 1 1 1 0 1 0 СЧТ:=СЧТ – 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 0 1 0 1 +Р0 1 1 0 0 1 1 1 1 0 0 0 0 0 1 1 1 0 1 0 1 РСМ:=РСМ+Р1 0 1 1 0 0 1 1 1 0 0 0 0 0 1 1 1 0 1 0 1 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 1 1 0 0 1 1 1 1 0 0 0 0 0 1 1 0 1 0 СЧТ:=СЧТ – Окончание табл. 4.0 1 0 1 1 1 0 0 0 1 0 0 0 0 0 1 1 0 1 0 0 +Р1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 1 0 1 0 0 РСМ:=РСМ+Р1 1 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1 0 1 0 0 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 0 0 0 1 1 1 1 1 1 0 0 0 0 0 1 0 0 1 СЧТ:=СЧТ – 0 1 0 1 1 1 0 0 0 1 1 0 0 0 0 0 1 0 0 1 1 +Р1 0 1 0 0 0 1 1 1 1 1 0 0 0 0 0 1 0 0 1 1 РСМ:=РСМ+Р1 1 0 1 0 0 0 1 1 1 1 0 0 0 0 0 1 0 0 1 1 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 0 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 1 СЧТ:=СЧТ – 1 0 1 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 0 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 1 0 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 СЧТ:=СЧТ – 1 0 0 1 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 (CF,PCM):=RС((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 1 0 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 СЧТ:=СЧТ – CF=0; SF=0; ZF=0; OF=0.

4.5.2. Алгоритм умножения целых чисел в формате с ФТ в прямом коде Алгоритм умножения целых чисел в формате с ФТ в прямом коде отличается от ранее рассмотренного алгоритма умножения целых беззнаковых чисел в формате с ФТ следующим:

1. Умножаются модули операндов.

2. Знак произведения определяется операцией сложения по модулю 2 знаковых разрядов операндов (сомножителей):

Знак Знак Сложение Знак множимого множителя по модулю 2 произведения 0 0 0^0=0 0 1 0^1=1 1 0 1^0=1 1 1 1^1=0 3. В счетчик тактов (СЧТ) устанавливается значение на единицу меньше количества битов регистра множителя (так как на знаковый бит умножение не производится).

4. Чтобы избавиться от знакового разряда множителя, который при значении СЧТ=0 находится в младшем разряде Р2, выполняется так называемый «n сдвиг». Это делается логическим сдвигом вправо на один бит регистра сумматора РСМ и регистра Р2 (с переносом выдвигаемого разряда из РСМ в старший разряд Р2).

4.5.3. Алгоритм умножения целых чисел в дополнительном коде Алгоритм умножения целых чисел в дополнительном коде отличается от алгоритма умножения целых чисел в формате с ФТ в прямом коде следующим:

1. Умножается дополнительный код множимого на дополнительный код множителя.

2. В РСМ выполняется арифметический сдвиг.

3. При умножении на множитель, имеющий отрицательный знак, требуется коррекция результата. Коррекция состоит в том, что когда СЧТ становится равным 0, из РСМ вычитается множимое (прибавляется множимое со знаком «минус») и только после этого выполняется «n сдвиг».

Необходимость коррекции объясняется следующим. Дополнительный код отрицательного числа Y получается как:

[Y]2=2n + Y, где n – разрядность процессора.

Откуда Y=[Y]2 – 2n.

Тогда [X]2*[Y]2 =[X]2*([Y]2 –2n)=[X]2*[Y]2–([X]2*2n)=[X]2*[Y]2 +(–[X]2*2n), где второе слагаемое – ([X]2*2n) – это и есть коррекция в РСМ.

Пример. Выполнить умножение операндов X и Y на восьмиразрядном процессоре. X= – 160(8), Y=67(8) (табл. 4.4). Обратите внимание, что при рассмотрении примера двойной рамкой выделяется значение младшего бита Р2, который анализируется на шаге 4.

X= – 160(8)= – 1110000(2); [X]2=10010000;

Y=67(8)=110111(2); [Y]2=110111;

Р1=10010000;

Р2=00110111.

В табл. 4.4 через ARC обозначается комбинация арифметического и логического сдвигов. В этом случае выдвигаемый разряд записывается во флаг CF. Если при сложении возникает переполнение, то это учитывается при арифметическом сдвиге (значение CF записывается в знаковый бит, а значение знакового бита – в старший числовой разряд).

После «n сдвига» в регистрах РСМ и Р2 содержится произведение:

в РСМ – старшая часть, а в Р2 – младшая часть. Выполним проверку:

[X*Y]2=[1110011111110000]2= – 001100000010000(2)= – 14020(8).

1 6 x 6 — — — — — 1 4 2 1 2 4 — — — — — 1 4 0 2 Результат верен.

Таблица 4.Умножение в дополнительном коде X*Y, где X =– 160(8), Y= 67(8) CF PCM P2 CЧТ Комментарий * * * * * * * * * * * * * * * * * * * * * Исходное состояние CF:=0; РСМ:=0; Р2:=[Y]2;

0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0 1 1 СЧТ=0 1 0 0 1 0 0 0 0 0 0 1 1 0 1 1 1 0 1 1 1 +Р0 1 0 0 1 0 0 0 0 0 0 1 1 0 1 1 1 0 1 1 1 РСМ:=РСМ+Р0 1 1 0 0 1 0 0 0 0 0 1 1 0 1 1 1 0 1 1 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 1 0 0 1 0 0 0 0 0 0 1 1 0 1 1 0 1 1 СЧТ:=СЧТ – 0 1 0 0 1 0 0 0 0 0 0 0 1 1 0 1 1 0 1 1 0 +РРСМ:=РСМ+Р1;

1 0 1 0 1 1 0 0 0 0 0 0 1 1 0 1 1 0 1 1 переполнение при сложении! 0 1 0 1 0 1 1 0 0 0 0 0 1 1 0 1 1 0 1 1 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 0 1 0 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 СЧТ:=СЧТ – 0 1 0 0 1 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 +РРСМ:=РСМ+Р1 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 0 переполнение при сложении! 0 1 0 0 1 1 1 1 0 0 0 0 0 1 1 0 1 0 1 0 1 (CF,PCM):=ARC((CF,PCM),1) 0 (CF,P2):=RS((CF,P2),1) 0 1 0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 1 0 СЧТ:=СЧТ – Окончание табл. 4.0 1 1 0 0 1 1 1 1 0 0 0 0 0 1 1 0 0 1 0 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 1 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 СЧТ:=СЧТ – 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 +РРСМ:=РСМ+Р1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 переполнение при сложении! 1 1 0 1 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 1 (CF,PCM):=ARC((CF,PCM),1) 0 (CF,P2):=RS((CF,P2),1) 1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 1 0 0 1 СЧТ:=СЧТ – 0 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 +РРСМ:=РСМ+Р1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 1 переполнение при сложении! 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 1 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 СЧТ:=СЧТ – 1 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 СЧТ:=СЧТ – "n"-й сдвиг;

1 1 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 0 (CF,PCM):=ARC((CF,PCM),1) 0 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 (CF,P2):=RS((CF,P2),1) CF=0; SF=1; ZF=0; OF=0.

4.5.4. Алгоритм умножения двоичных дробных чисел в формате с ФТ Алгоритм умножения двоичных дробных чисел в формате с ФТ имеет следующие отличия по отношению к раннее рассмотренным.

Нельзя избавиться от знакового бита множителя, после достижения счетчиком тактов значения, равного 0, выполнив дополнительный «n сдвиг» (произведение было бы уменьшено в два раза). Нужно обнулить младший бит регистра Р2, например, выполнив операцию поразрядной конъюнкции с маской, содержащей 1 во всех битах, кроме младшего. Рассмотрим пример выполнения такого алгоритма.

Выполнить операцию умножения операндов X и Y на восьмиразрядном процессоре в прямом коде (табл. 4.5). Обратите внимание, что при рассмотрении примера двойной рамкой выделяется значение младшего бита Р2, который анализируется на шаге 4.

X=0,24(8), Y= – 0,65(8);

Z=X*Y;

X=0,24(8)=0,0101000(2); [X]1=00101000;

Y= – 0,65(8)= – 0,1101010(2); [Y]1=11101010;

Р1=[|X|]1=00101000;

Р2=[|Y|]1=01101010.

В этой таблице через ARC обозначается комбинация арифметического и логического сдвигов. В этом случае выдвигаемый разряд записывается во флаг CF. Если при сложении возникает переполнение, то это учитывается при арифметическом сдвиге (значение CF записывается в знаковый бит, а значение знакового бита – в старший числовой разряд). После поразрядной конъюнкции Р2 с маской 11111110(2) в регистрах РСМ и Р2 содержится произведение: в РСМ старшая часть, а в Р2 – младшая часть. Выполним проверку:

[X*Y]1=[1010000100100000]1= – 0,01000010010000(2)= – 0,20440(8).

0, 6 x 0, 2 — — — — — 3 2 1 5 — — — — — 0, 2 0 4 Результат верен.

Таблица 4.Умножение в прямом коде X*Y, где X = 0,24(8), Y= –0,65(8) CF PCM P2 CЧТ Комментарий * * * * * * * * * * * * * * * * * * * * * Исходное состояние CF:=0; РСМ:=0; Р2:= [Y]1;

0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 СЧТ=0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 1 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 СЧТ:=СЧТ – 0 0 1 0 1 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 +Р0 0 0 1 0 1 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 РСМ:=РСМ+Р1;

0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 1 0 1 1 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 1 0 0 1 0 СЧТ:=СЧТ – 0 0 0 0 0 1 0 1 0 0 0 0 1 1 0 1 0 0 1 0 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 1 0 1 0 СЧТ:=СЧТ – 0 0 1 0 1 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 +Р0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 1 0 1 0 0 РСМ:=РСМ+Р1;

0 0 0 0 1 1 0 1 1 0 0 0 0 1 1 0 1 0 1 0 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 0 1 СЧТ:=СЧТ – 1 0 0 0 0 1 1 0 1 0 0 0 0 0 1 1 0 0 0 1 1 (CF,PCM):=ARC((CF,PCM),1) Окончание табл. 4.(CF,P2):=RS((CF,P2),1) 0 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 1 0 0 1 СЧТ:=СЧТ – 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 1 0 0 1 0 +Р0 0 0 1 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 1 0 РСМ:=РСМ+Р1 0 0 0 1 1 0 1 0 1 0 0 0 0 0 1 1 0 0 1 0 (CF,PCM):=ARC((CF,PCM),1) 0 (CF,P2):=RS((CF,P2),1) 0 0 0 1 1 0 1 0 1 1 0 0 0 0 0 1 0 0 0 СЧТ:=СЧТ – 0 0 1 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1 +Р0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 1 РСМ:=РСМ+Р0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 СЧТ:=СЧТ – Р2&11111110; удаление знака 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 множителя Знак Z=(знак Х)^(знак У)=0^1=CF=0; SF=1; ZF=0; OF=0.

4.5.5. Алгоритм умножения чисел в формате с плавающей точкой Так же как и при сложении, операция умножения операндов, представленных в формате с плавающей точкой, выполняется раздельно над мантиссами и порядками. Операция Z=X*Y, где X=Мх*2Px, Y=My*2Py, выполняется как Mz=Mx*My; Pz=Px+Py.

Алгоритм состоит из следующих шагов:

1. Операнды извлекаются из ОП с разделением на мантиссу (восстанавливается скрытый бит) и порядок.

2. Содержимое регистров порядков складывается с вычитанием константы 127(10) (смещение). Проверяется превышение максимально и минимально допустимого порядков, и если такой случай есть, то устанавливается соответствующий флаг.

3. Содержимое регистра мантиссы Х умножается на содержимое регистра мантиссы Y в прямом коде по алгоритму умножения дробных чисел в формате с ФТ (выравнивание мантисс не нужно).

4. Проверяется нарушение нормализации вправо мантиссы произведения. Если нарушение есть, производится нормализация влево.

При этом проверяется, чтобы порядок произведения Рz не превысил максимально допустимый (если превысил, то фиксируется переполнение).

5. Полученный результат записывается в ОП в формате КВ (со скрытием бита мантиссы и объединением содержимого регистра порядка и регистра мантиссы).

Рассмотрим пример выполнения такого алгоритма. Выполним операцию умножения операндов Z=X*Y.

X=24(8), Y= – 65(8). Представим эти операнды в формате КВ, в том виде, в котором они хранятся в ОП, т.е. со скрытым битом.

X=24(8)=10100(2)=0,10100(2)*2100. Тогда с учетом скрытия старшего бита получаем:

X= 0 1 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 байт байт байт байт Y= – 65(8)= – 110101(2)= – 0,110101(2)*2101. Тогда с учетом скрытия старшего бита получаем:

Y= 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 байт байт байт байт Рассмотрим выполнение алгоритма умножения.

Шаг 1. Операнды извлекаются из ОП (с восстановлением скрытого бита) и помещаются в ОА в регистры мантисс и порядков:

РПх= 1 0 0 0 0 1 0 РМх= 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 РПy= 1 0 0 0 0 1 0 РМy= 1 1 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Ша г 2. Определяется сумма порядков [РПх+( – 127(10))+РПy]2:

РПх 1 0 0 0 0 1 0 [– 127(10)]2 1 0 0 0 0 0 0 РПх+[ – 127(10)]2= 0 0 0 0 0 1 0 РПy 1 0 0 0 0 1 0 РПх+( – 127(10))+РПy 1 0 0 0 1 0 1 Ша г 3. Умножение мантисс (табл. 4.6). Так как значащие разряды мантисс занимают 8 бит, в таблице показываются только по 8 бит в регистрах РСМ и Р2.

Таблица 4.Умножение мантисс в прямом коде CF PCM P2 CЧТ Комментарий * * * * * * * * * * * * * * * * * * * * * Исходное состояние CF:=0; РСМ:=0; Р2:= [Мy]1;

0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 0 1 1 СЧТ=0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 0 1 1 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 1 1 СЧТ:=СЧТ – 0 1 0 1 0 0 0 0 0 1 1 1 0 1 0 1 0 1 1 0 + РМх 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 0 1 0 1 1 0 РСМ:=РСМ+Р1;

0 0 0 1 0 1 0 0 0 0 1 1 1 0 1 0 1 0 1 1 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 0 0 1 0 СЧТ:=СЧТ – 0 0 0 0 1 0 1 0 0 0 0 1 1 1 0 1 0 0 1 0 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 0 1 0 СЧТ:=СЧТ – 0 1 0 1 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 0 + РМх 0 0 1 1 0 0 1 0 0 0 0 0 1 1 1 0 1 0 1 0 0 РСМ:=РСМ+Р1;

0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 1 0 0 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 1 1 0 0 1 0 0 0 0 0 1 1 1 0 0 0 1 СЧТ:=СЧТ – Окончание табл. 4.0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 0 0 1 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 0 0 1 1 0 0 1 0 0 0 0 0 1 1 1 0 0 1 СЧТ:=СЧТ – 0 1 0 1 0 0 0 0 0 0 0 0 0 1 1 1 0 0 1 0 + РМх 0 0 1 1 0 1 0 0 1 0 0 0 0 0 1 1 1 0 0 1 0 РСМ:=РСМ+Р1;

1 0 0 1 1 0 1 0 0 0 0 0 0 0 1 1 1 0 0 1 0 (CF,PCM):=ARC((CF,PCM),1) 0 (CF,P2):=RS((CF,P2),1) 0 0 1 1 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 СЧТ:=СЧТ – 0 1 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 + РМх 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 0 1 РСМ:=РСМ+Р1;

0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 1 (CF,PCM):=ARC((CF,PCM),1) (CF,P2):=RS((CF,P2),1) 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 СЧТ:=СЧТ – Ша г 4. У мантиссы произведения нет нарушения нормализации вправо.

Ша г 5. Запись в ОП результата.

Знак Z=знак Х^знак У=0^1=1.

[Mz]1=1100001001000000000000000;

Pz=10001010.

После скрытия старшего бита мантиссы получаем:

Pages:     | 1 |   ...   | 4 | 5 || 7 | 8 |   ...   | 13 |






















© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.