Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Б М.docx
Скачиваний:
148
Добавлен:
09.06.2015
Размер:
2.63 Mб
Скачать

ПрРшГ

В цпршВляющай блок у б

ШИВых

из знакового разряда суммы при отсутствии переноса в этот раз­ряд или перенос в знаковый разряд при отсутствии переноса из разряда знака, то имеется переполнение разрядной сетки соответственно при отрицатель­ной и положительной суммах.

Если нет переносов из знакового разряда и в знаковый разряд суммы или есть оба эти перено­са, то переполнения нет и при О в знаковом разряде сумма поло­жительна, а при 1 в знаковом разряде сумма отрицательна.

На рис. 7.1 представлена уп­рощенная структурная схема АЛУ для операций сложения и вычитания л-разрядных (нуле­вой разряд знаковый) двоичных чисел с фиксированной точкой.

Предполагается, что числа хра­нятся в памяти в дополнитель­ном коде.

В состав АЛУ входят я-раз- рядный параллельный комбина-Рис. 7.1. Структурная схема АЛУ ционный сумматор См, регистр а™ сложения и вычитания двоич- сумматора РгСм, входные ре-ных чисел с Фиксированной точкой гистры сумматора РгВ и РгА, входной регистр АЛУ Pel.

Из оперативной памяти по входной информационной шине ШИВх в АЛУ поступают операнды. Операнды размещаются в РгВ (первое слагаемое или уменьшаемое) и Рг1 (второе слага­емое или вычитаемое); Рг1 соединен с РгА цепями прямой и ин­версной передачи кода. Прямая передача используется при операции алгебраического сложения, а инверсная — при опера­ции вычитания. Результат операции выдается из АЛУ в опера­тивную память по выходной информационной шине ШИВых.

При выполнении операции в АЛУ помимо результата опера­ции формируется 2-разрядный код признака результата ЯР, который принимает следующие значения:

——<> o —i 11

j 11

x=am-2m + am_,-2m-,+.-- 46

оТТ ооо ТоТ Too 47

оГп Топ ооГо Гио 47

Т" 'Т' чг ЧТ" т 47

( + 0)пр = 000...0; 52

(+0)обр=000...0. 52

о;м=л-1 + |<?1, 54

=(G)CM+(QL- 54

<7= £ <тг16-' (а/=0, 1, 2, .. n F), 61

0П0П01 пТкиТо 010010И lTTiooib 11111000 lTnoTol 67

оооо оно ooTo^jooo оТоТ ^JToT 68

^пер (ЗЛ4) 106

«л. 148

К=ф„ v2, i>J, 203

{/ = {u„ «2, . . U„|, 203

5={Q0, Qi, Qr), 203

1Ь, 220

_qji 228

I 282

L °" .1 I й 1 • • • I °ч I 356

Х~Х1ГХГ~17~Т 356

GEP-EEI 381

Ц-Щ I 469

©4 489

<Ь• • • <Ь 489

фф-ф фф-ф 501

У-Аг 553

i/iwiii 562

м. 562

„ ЁЛ1Ш1 567

Примем, что код признака результата формируется комбина­ционной схемой ЯР, на входы которой поступают сигналы, соответствующие значениям всех,разрядов сумматора, а также сигналы переносов из знакового разряда ПнСм [0] и в знаковый из старшего цифрового разряда ПнСм[\\ Признак перепол­нения (ЯР=11) формируется, если булева функция

ПнСм [0] ПнСм[\]\/ ПнСмЩ ПнСм [1]= 1.

Признак нулевого значения результата /7Р=00 формирует­ся, если

"д с^й-i.

1—0

Условия выработки признаков отрицательного и положи­тельного результатов имеют соответственно вид

С*[0](ПнСм(0)ПнСм[1]VПнСм[0]ПнСм[\])\

См [0](ПнСм [0]ПнСм [1 ]V ПнСм[0\ПнСмЦ\)\

При выполнении алгебраического сложения поступившие в АЛУ коды операндов находятся на входных регистрах РгВ и РгА сумматора. Код суммы формируется на выходах схемы См и фиксируется в регистре РгСм.

Операция алгебраического вычитания

z=x-y=x+(-y)

может быть сведена к изменению знака вычитаемого Y и опера­ции алгебраического сложения. Изменению знака соответствует следующая процедура (см. гл. 2): принятый в Рг1 код числа передается инверсно в РгА и при сложении осуществляется подсуммироваиие 1 в младший разряд сумматора.

Передачи информации в регистрах АЛУ производятся от­дельными микрооперациями, инициируемыми показанными на рис. 7.1 управляющими сигналами. Слово из Рг/ в РгА может быть передано в прямом (управляющий сигнал ПрРгАП) или в инверсном (управляющий сигнал ПрРгАИ) кодах.

Ниже приведено совмещенное описание микропрограммы операций сложения и вычитания на языке ЯМ:

ПрРгВ РгВ = ШИВх{прием / операнда);

ПрРг/ : Рг/ : = ШИВх ( прием II операнда );

Прием: если сложение то РгА : = Рг/ иначе РгА : = Рг/;

Сумма: если сложение то РгСм : = РгА + РгВ иначе РгСм :=РгА + РгВ+ /;

ПрУБ если ЯР= 11 то прерывание иначе

ПрШИВых: ШИВых: = РгСм (выдача результата); конец

Микрооперация ПрУБ состоит в выдаче в управляющий блок кода признака и в формировании запроса прерывания при пере­полнении разрядной сетки.

  1. Структуры и микропрограмма АЛУ для умножения чисел с фиксированной точкой

В ЭВМ операция умножения чисел с фиксированной точкой с помощью соответствующих алгоритмов сводится к операциям сложения и сдвига.

Произведение двух (п — 1)-разрядных чисел может иметь 2 (я— 1) значащих разрядов. Поэтому при операции умножения целых чисел необходимо предусмотреть возможность формиро­вания в АЛУ произведения, имеющего двойную по сравнению с сомножителями длину. В ЭВМ, в которых числа с фиксирован­ной точкой являются дробями, младшие n— 1 разрядов произве­дения часто.отбрасываются (при отбрасывании может произво­диться операция округления произведения).

Для выполнения умножения АЛУ должно содержать регист­ры множимого, множителя и схемы формирования суммы частичных произведений — так называемый сумматор частич­ных произведений, в котором (рис. 7.2) путем соответствующей организации передач производится последовательное суммиро­вание частичных произведений.

ПрРгг

ПрХ

Рьг

Операция умножения состоит из n— 1 [n— 1 — число цифро­вых разрядов множителя] циклов. В каждом цикле анализирует­ся очередная цифра множителя, и если это 1, то к сумме частичных произведе­ний прибавляется множимое, в против­ном случае прибавление не происходит.

V

См

Цикл завершается сдвигом множимого относительно суммы частичных произ­ведений либо сдвигом суммы частичных произведений относительно неподвиж­ного множимого.

Рг1

Рис. 7.2. Сумматор час­тичных произведений

В зависимости от способа формиро­вания суммы частичных произведений различают четыре основных метода вы­полнения умножения и соответственно четыре структуры АЛУ для этой опера­ции (рис. 7.3). Для определенности сна-