Устройство для сложения и вычитания чисел с плавающей запятой

Иллюстрации

Показать все

Реферат

 

Изобрете ние относится к области вычислительной техники. Цель изобретения - увеличение быстродействия. Устройство для сложения и вычитания чисел с плавающей запятой содержит входной коммутатор 1, регистры мангтисс 2,3, регистр порядков 4, сумматор порядков 5, сумматор мантисс 6, блок управления 7, элемент ИСКЛЮЧАЮX (Л 33 J 00 У1 со Од со 35

СОЮЗ СОВЕТСНИХ соцИАлистичесних

РЕСПУБЛИН цц 4 С 06 F 7/50

ОПИСАНИЕ ИЗОБРЕТЕНИЙ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР

flO ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3992108/24-24 (22) 18 ° 12.85 (46) 07.06.87. Бюл. № 21 (72) А.П.Запольский, А.И.Подгорнов, А.М.Шугаев, А.Я.Костинский, М.П.Орлова, Б.В.Мазикин и И.М.Зильбергельд (53) 681 325.5(088.8) (56) Дроздов Е.А., Камарницкий В.А., Пятибратов А.П. Электронные вычислительные машины единой системы.

М.: Машиностроение, 1976, с. 210, . р. 63.

„„SU„„1315969 А 1

Авторское свидетельство СССР

¹ 959070, кл. С 06 F 7/50, 1980. (54) УСТРОЙСТВО ДЛЯ СЛОЖЕНИЯ И ВЫЧИТАНИЯ ЧИСЕЛ С ПЛАВАКЩЕЙ ЗАПЯТОЙ (57) Изобретение относится к области вычислительной техники. Цель изобретения — увеличение быстродействия.

Устройство для сложения и вычитания чисел с плавающей запятой содержит входной коммутатор 1, регистры ман-. тисс 2,3, регистр порядков 4, сумматор порядков 5, сумматор мантисс 6, блок управления 7, элемент ИСКЛЮЧАЮ1315969

ЩЕЕ ИЛИ 8," первую и вторую группы элементов И-ИЛИ 9, 10, первый и второй счетчики 11, 12, группу мультиплексоров 13, первый и второй шифраторы 14, 15, триггер 16, первый и

Изобретение относится к вычислительной технике и может быть использовано при построении арифметических устройств ЭВМ.

Цель изобретения — увеличение 5 быстродействия.

На фиг. 1 представлена функциональная схема устройства для сложения и вычитания чисел с плавающей запятой; на фиг. 2 — функциональная схема блока управления устройства для сложения и вычитания чисел; на фиг.3 —функциональная схема входного коммутатора устройства для сложения и вы,читания чисел с плавающей запятой; 15 на фиг. 4 — временная диаграмма работы устройства для сложения и вычитания чисел с плавающей запятой на примере вычитания операндов

37054657...7 и 36536644...4.

Устройство для сложения и вычитания чисел с плавающей запятой (фиг.1) содержит входной коммутатор 1, первый регистр 2 мантиссы, второй ре25 гистр 3 мантиссы, третий регистр 4 характеристики, сумматор 5 характеристики, сумматор 6 мантис|сы, блок 7 управления, элемент ИСКЛОЧАКЩЕЕ ИЛИ

8, первая группа элементов И-ИЛИ 9, вторая группа элементов И-ИЛИ 10, первый счетчик 11, второй счетчик 12, группа мультиплексоров 13, первый шифратор 14, второй шифратор 15, триггер 16, первый сдвиговый регистр

17, второй сдвиговый регистр 18, 35 группа элементов И 19, группа элементов ЗАПРЕТ 20, первый элемент И-ИЛИ

21„ первый элемент И 22, второй элемент И 23, элемент ИЛИ 24, второй элемент И-ИЛИ 25, вход 26 первого операнда, вход 27 второго операнда, вход 28 запуска, вход 29 нормализации, вход 30 операции, вход 31 синхронизации, выход 32 признака завершения операции, выход 33 характерис- 45 тики результата, выход 34 мантиссы второй регистры сдвига 17, 18, группу элементов И 19, элемент ЗАПРЕТ 20, элемент И-ИЛИ 21, элемент И 22, 23, элемент ИЛИ 24, элемент И-ИЛИ 25.

4 ил. 3 табл.

2 результата, выход 35 признака представления мантиссы в дополнительном коде, выход 36 устройства результата. Позициями 37-62 обозначены входы и выходы блоков. Первый, второй, третий, четвертый, пятый и шестой входы. первый, второй, четвертый и третий выходы входного коммутатора 1 соединены соответственно с входом 26 первого операнда, входом 27 второго операнда, выходом переноса сумматора

5 характеристики, выходом младшего разряда второго сдвигового регистра

18, тринадцатым и первым выходами блока 7 управления, входом данных первого регистра 2 мантиссы, входом данных регистра 4 характеристики и входом данных основных тетрад первого сдвигового регистра 17, десятым входом блока управления и первым управляющим входом сумматора 5 характеристики. Вход данных дополнительной тетрады, вход сдвигаемой тетрады, вход управления, вход синхронизации, выход дополнительной тетрады и выход основных тетрад первого сдвигового регистра 17 соединены соответственно с нулевым потенциалом, выходами первого элемента И-ИЛИ 21 и группы элементов ЗАПРЕТ 20, первым и четвертым выходами олока 7 управления, входом А слагаемого сумматора 6 мантиссы и входом данных второго регистра 3 мантиссы, выход данных, выход сброса и входы синхронизации отдельных тетрад которого соединены соответственно с выходом 34 мантиссы результата, первым выходом блока 7 управления и соответствующими выходами группы элементов И 19, первые и вторые входы которых соединены соответственно с седьмым выходом блока 7 управления и с соответствующими выходами второго сдвигового регистра

18, выход младшего разряда, вход данных, вход вдвигаемой информации, 15969 4

3 13 вход управления и вход синхронизации которого соединены соответственно с пятым входом блока 7 управления, восьмым входом первого шифратора 14 и выходом 32 признака завершения операции, нулевым и единичным потен"циалом, первым и третьим выходом блока 7 управления, первый, второй, третий, четвертый, шестой, седьмой, восьмой, девятый и одиннадцатый входы, первый, второй, третий, пятый, шестой, восьмой, девятый, десятый, одиннадцатый, двенадцатый и четырнадцатый выходы которого соединены соответственно с входом 28 запуска, входом 29 нормализации, входом 30 операции, входом 31 синхронизации, третьим и вторым выходами первого шифратора 14 прямым выходом триггера 16, выходом элемента ИСКЛЮЧАКЗЦЕЕ

ИЛИ 8, четвертым выходом первого шифратора 14, третьим входом первой группы элементов И-ИЛИ 9, вторым входом второй группы элементов И-ИЛИ 10, входом управления первого счетчика

11, первым входом элемента ИЛИ 24, входами синхронизации третьего регистра 4 характеристики и первого регистра 2 мантиссы и сбросовым входом триггера 16, входами синхронизации первого и второго счетчиков 11 и 12, четвертым входом первой группы элементов И-ИЛИ 9, третьим входом второй группы элементов И-ИЛИ 10 и вторым входом второго элемента И 23, с первым установочным входом триггера 16, вторыми входами группы элементов запрета и первого элемента И-ИЛИ

21, первым входом первого шифратора

14, входом управления сумматора 6 мантисс, вторым установочным входом триггера 16, вторым входом первого шифратора 14 и вторым входом первого элемента И 22,входом синхронизации триггера 16, третьим входом первого элемента И-ИЛИ 21 и вторым входом управления сумматора 5 характеристи,ки, шестым входом первого шифратора 14, Выход, вход переноса, входы

В и А слагаемого сумматора 5 характеристики соединены соответственно с входом данных первого счетчика 11 и выходом 33 характеристики результата, единичным потенциалом, выходом второй группы элементов И-ИЛИ 10 и выходом первой группы элементов

И-ИЛИ 9, первый и второй входы которой соединены соответственно с выходом третьего регистра 4 характерис5

f0

f5

55 тики и входом 26 первого операнда.

Вход 27 второго операнда соединен с первым входом. второй группы элементов И-ИЛИ 10, четвертый вход которой соединен с выходом второго счетчика

12, старшие входы данных, младший вход данных, вход управления которого соединены соответственно с нулевым потенциалом, выходом второго элемента И 23, выходом элемента ИЛИ 24, второй вход которого соединен с первым выходом первого шифратора 14, второй выход, третий, четвертый и пятый входы которого соединены соответственно с первым входом второго элемента И 23, прямым выходом триггера 16 и входом переноса сумматора

6 мантиссы, выходом переноса сумматора 6 мантиссы и входом данных триггера 16, выходами всех четырех разрядов результата сумматора 6 мантисс, выход младшего разряда результата, выходы остальных разрядов результата которого соединены соооветственно с первыми входами первого элемента И-ИЛИ 21 и группы элементов

ЗАПРЕТ 20. Выход 35 признака представления мантиссы в дополнительном коде соединен с выходом первого элемента И 22, первый вход которого соединен с инверсным выходом триггера 16. Выход 36 знака результата соединен с выходом второго элемента

И-ИЛИ 25, первый, второй и третий выходы которого соответственно сое- : динены с выходом 36 признака представления мантиссы в дополнительном коде, пятнадцатым выходом блока 7 управления и выходом знакового разряда третьего регистра 4 характеристики. Входы элемента ИСКЛЮЧАКМЦЕЕ ИЛИ

8 соединены соответственно со знаковыми входами первого и второго операндов 26 и 27. Вход В слагаемого сумматора 6 мантиссы соединен с выходом группы мультиплексоров 13, вход данных старшей тетрады, входы данных остальных тетрад и входы управления соединены соответственно с нулевым потенциалом, выходом первого регистра 2 мантиссы, выходом второго шифратора 15, входы которого соеди-. нены с выходами первого счетчика 11.

Шестнадцатый выход блока 7 управления соединен с седьмым входом первого шифратора 14.

Блок управления (фиг. 2) содержит первый триггер 63, второй триггер 64, третий триггер 65, четвертый триггер

5 13

66, пятый триггер 67, шестой триггер 68, седьмой триггер 69, восьмой триггер 70, девятый триггер 71, десятьп» триггер 72, одиннадцатый триггер

73, первый элемент И 74, второй элемент И 75, третий элемент И 76, четвертый элемент И 77, сумматор 78 по модулю два, первый элемент ИЛИ 79, второй элемент ИЛИ 80, первый элемент

81 задержки, второй элемент 82 задержки, элемент И-ИЛИ 83. Четвертый вход блока управления соединен с входами синхронизации первого триггера 63, восьмого триггера 70,, девятого триггера 71, первыми входами первого, второго и третьего элементов. И 74-76, входом второго элемента 82 задержки и вторым входом элемента И-ИЛИ 83.

Выход, первый, третий, четвертый, пятьп», шестой и седьмой входы элемента И-ИЛИ 83 соединены соответственно с седьмым выходом блока 7 управления, выходом второго элемента 82 задержки, входом синхронизации третьего триггера 65 и тринадцатым выходом блока управления, седьмь»м входом блока управления, выходом девятого триггера

71, выходом третьего триггера 65 и первым входом данных восьмого триггера 70, выходом третьего элемента И 76 и вторым входом второго элемента

ИЛИ 80, выход и первый вход которого соединен соответственно с четвертым и третьим входами блока управления и с выходом первого элемента ИЛИ 79, первый и второй входы которого соединены соответственно с одиннадцатым выходом блока управления, выходом второго элемента И 75, входом синхронизации одиннадцатого триггера 73 и с первым входом синхронизации десятого триггера 72, а также с выходом первого элемента И 74, выход которого соединен с вторым выходом блока управления; входом первого элемента 81 задержки, установочным входом второго триггера 64, входами синхронизации пятого, шестого и седьмого триггеров

67-69, выход и вход данных седьмого триггера 69 соединен соответственно с первым входом сумматора 78 по модулю два и девятым входом блока управления. Первьп», второй, третий, пятый, шестой, восьмой, десятый и одиннадцатый входы блока управления соединены соот— ветственно с входами данных первого, пятого и шестого триггеров 63, 67 и 68, входом сброса второго триггера 64 и первым установочным входом четверто15969 6

5

10 !

4 го триггера 66, входом данных девятого триггера 71, вторым установочным входом четвертого триггера 66, первым входом четвертого элемента И 77, входом данных одиннадцатого триггера 73 и входом данных десятого триггера 72, прямой и инверсный выходы и вход сброса которого соединены соответственно с четырнадцатым выходом блока управления и вторым входом синхронизации десятого триггера 72, а также с входом сброса четвертого триггера 66, вторым входом первого элемента И 74, первым выходом блока управления, входом установки одиннадцатого триггера

73 и прямым выходом первого триггера

63, инверсный выход которого соединен с вторым входом второго элемента И 75 и пятым выходом блока управления.

Шестой, восьмой, девятый, двенадцатьп», десятый выходы блока управления соединены соответственно с выходОм первого элемента 81 задержки, вторым входом данных восьмого триггера 70 и прямым выходом четвертого триггера 66, выходом пятого триггера 67, выходом четвертого элемента И 77, прямым выходом сумматора 78 по модулю два, второй вход и инверсный выход которого соединены соответственно с выходом шестого триггера 68, пятнадцатым выходом блока управления и третьим установочным входом четвертого триггера 66, инверсный выход которого соединен с вторым входом четвертого элемента И 77. Выходы восьмого триггера

70 и второго триггера 64 соединены соответственно с вторым входом третьего элемента И 76, входом данных третьего триггера 65 и третьим входом второго элемента И 75. Инверсный выход одиннадцатого триггера 73 соединен с шестнадцатым выходом блока 7 управления.

Входной коммутатор (фиг. 3) содержит первую группу элементов И-ИЛИ 84, вторую группу элементов И-ИЛИ 85, триггер 86., элемент НЕ 87. Первый и второй входы входного коммутатора соединены с первыми и вторыми входами первой и второй групп элементов

И-ИЛИ 84 и 85, выходы которых соединены соответственно с вторым и первым выходами выходного коммутатора, третий вход которого соединен с входом данных триггера 86. Третьи входы первой и второй групп элементов И-ИЛИ 84 и 85 соединены с третьим выходом

13159 входного коммутатора, прямым выходом триггера 86, инверсный выход которого соединен с четвертым выходом входного коммутатора и четвертыми входами первой и второй групп элементов И-ИЛИ 5

84 и 85. Первый и второй установочные .входы, первый и второй входы синхронизации соединены соответственно с выходом элемента НЕ 87, а также четвертым, пятым и шестым входами fp входного коммутатора. Вход элемента

НЕ 87 соединен с шестым входом входного коммутатора.

Входной коммутатор 1 предназначен для разделения двух операндов, участ- 15 вующих в операции. Мантисса операнда с меньшей характеристикой заносится в регистр 2 мантиссы. Мантисса операнда с большей характеристикой заносится в старшие п разрядов первого 20 сдвигового регистра 17. В разряд n+1 заносятся нули (под разрядом подразумевается четырехбитная цифра).

Входным коммутатором 1 управляет выходной перенос сумматора 5 харак- 25 теристики, осуществляющего сравнение характеристик двух операндов. На вход

А сумматора 5 характеристики через первую группу элементов ИСКЛЮЧАЮЩЕЕ

ИЛИ 8 подается характеристика первого30 операнда. На вход В сумматора 5 характеристики через вторую группу элементов И-ИЛИ 1.0 подается характерис-.. тика второго операнда.

Сумматор 5 характеристики в зависимости от состояния управляющих входов S, и Б осуществляет следующие операции:

S S = 00 — А + В;

818 =01-А+В; г 10 — А + В. 45

В исходном состоянии сумматор 5 характеристики выполняет операцию А+В (с учетом входного переноса). Состояние выходного переноса запоминается на триггер 86 и определяет разность характеристик. Триггер 86 в . исходном состоянии установлен в "1" и совместно с триггером 66 (в исходном состоянии установлен в "0") определяет режим работы сумматора 5 характеристики.

Если триггер 86 в результате операции А+В остается в "1" (есть выходной перенос), значит операнд А боль69 8 ше В. На выходе сумматора 5 характеристик формируется разность характеристик, которая заносится в первый счетчик 11. Разность характеристик на выходе сумматора 5 характеристик в этом случае формируется в прямом коде.

Если триггер 86 в результате операции А+В устанавливается в "0" (выходной перенос отсутствует), значит операнд А меньше В. На выходе сумматора 5 характеристик в этом случае формируется разность характеристик в дополнительном коде. Поэтому нулевое состояние триггера 86 меняет операцию на А+В. Тем самьп формируется разность характеристик в прямом коде.

Мантисса большого операнда заносится под управлением триггера 86 в первый сдвиговый регистр 17 через первую группу элементов И-ИЛИ 84.

Мантисса меньшего операнда заносится в первый регистр 2 мантиссы через вторую группу элементов И-ИЛИ 85.

Триггер 86 является двухтактным и меняет свое состояние по заднему фронту задающего синхроимпульса.

Одновременно с занесением исходных операндов в первый сдвиговый регистр 17 и регистр 2 мантиссы происходит занесение нулевой информации во второй сдвиговый регистр 18, второй счетчик 12 и второй регистр 3 мантиссы. В третий регистр 4 характеристики заносится характеристика большего операнда.

Режим работы устройства определяется триггерами 67-69. Пятый триггер

67 определяет, должен ли быть нормализован результат операции. Шестой триггер 68 определяет тип операции (сложение/вычитание).

Седьмой триггер 69 запоминает соотношение знаков исходных операндов, в "1" триггер 69 устанавливается, если знаки операндов разные, в противном случае он устанавливается в «О"

Сумматор 78 по модулю два в зависимости от содержимого триггеров 68 и 69 формирует режим работы сумматора 6 мантиссы. Это соответствие приведено в табл.1.

Для операции вычитания (А+В) на вход переноса необходимо подавать

"1" для представления операнда В в дополнительном коде. Для этих целей служит триггер 16, устанавливаемьп»

9 13159 в "1" перед началом операции А+В по установочному. вхбду.

Обработка мантиссы осуществляется за n+f такт, где и — число цифр мантиссы. За каждый такт сложения или вычитания обрабатывается одна цифра мантиссы. Один такт необходим для операции под дополнительной цифрой.

Для большего операнда дополнительная цифра равна "0" (занесение "0" в 10 и+1-ю тетраду первого сдвигового регистра 17 осуществляется одновременно с занесением мантиссы большего операнда в остальные и тетрад этого регистра). 15

Значение дополнительной цифры меньшего операнда определяется величиной разности характеристик k, которая хранится в первом счетчике 11 и определяется следующими соотноше- 20 киями: k = 0 — дополнительная цифра равна "0"; k)п — дополнительная цифра равна "О"; 1 < kc n — дополнительная цифра содержится в тетраде мантиссы меньшего операнда, имеющей номер k (нумерация тетрад идет от младших разрядов к старшим).

Обработка мантисс осуществляется в порядке возрастания номеров тетрад, начиная с дополнительной цифры, на 30 сумматоре б мантиссы. На вход А сумматора 6 мантиссы подается п+1-я тетрада первого сдвигового регистра 17. На вход В подается цифра меньшего операнда, которая коммутируется группой мультиплексоров 13 под управлением второго шифратора 15. Мультиплексоры 13 имеют п+1 вход, причем на и входов поступают соответствующие цифры меньшего операнда, а на и+1-й 40 вход подается "0". Второй шифратор 15 задает передачу на выход мультиплексоров

13 группы входа и+1, если содержимое первого счетчика 11 k= Оили k>п. Eсли, значение находится в диапазоне от 1 до и, шифратор 15 повторяет значение k.

Например, если мантисса содержит

14 цифр (п = 14), а содержимое первого счетчика 11 равно 4 (k = 4), шифратор 15 под управлением счетчика 11 коммутирует цифры мантиссы в следующей последовательности (от младших к старшим): 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, и+1, n+f п+1.

Кодировка шифратора для и = 14 в зависимости от величины k приведена в табл. 2 (мультиплексоры при этом имеют 15 входов, на вход 15 подаются

69 10 нули) . Шифратор представляет собой постоянное запоминающее устройство.

Цифра результата с сумматора 6 мантиссы через группу элементов ЗАПРЕТ 20 и первый элемент И-ИЛИ 21 поступает на вход вдвигаемой тетрады первого регистра 17. Очередная цифра мантиссы большего операнда поступает на вход А сумматора 6 мантиссы после выполнения операции -сдвига вправо на цифру первого сдвигового регистра 17.

В этой операции в тетраду и+1 вдвигается очередная цифра мантиссы, а в освободившуюся позицию старшей тетра- „ ды вдвигается цифра результата. Одновременно со сдвигом мантиссы в первом сдвиговом регистре 17 осуществляется модификация на "+1" первого счетчика 11, а в триггере 16 фиксируется выходной перенос от операции над предыдущими цифрами мантисс. После сдвига на входы А и В сумматора 6 мантисс подаются очередные цифры исходных операндов. На выходе сумматора б мантиссы формируется очередная цифра результата.

Одновременно со сдвигом вправо на цифру первого сдвигового регистра 17 осуществляется сдвиг вправо на один разряд второго сдвигового регистра 18, который выполняет функции регистра масок и управляет через группу элементов И 19 перезаписью информации из первого сдвигового регистра 17 во второй регистр

3 мантиссы, который хранит нормализованную мантиссу результата. Разрядность второго сдвигового регистра

18 п+1. В группу элементов И 19 входят и элементов И вЂ” по числу тетрад второго регистра 3 мантиссы.

Каждый из элементов И формирует импульс строба под управлением соответствующего разряда второго сдвигового регистра 18.

Таким образом, при каждом сдвиге вправо первого сдвигового регистра 17 осуществляется сдвиг вправо на один разряд второго сдвигового регистра

18, после чего задержанным синхросигналом осуществляется перезапись информации в соответствующие тетрады второго регистра 3 мантиссы. После первого сдвига осуществляется переза- пись старшей цифры, после второго сдвига — двух старших цифр, после и-го и и+1-ro сдвигов — всех п цифр мантиссы результата. При этом модифицируется первый счетчик 11, а

11 также фокусируется в триггере 16 входной перенос.

Операция завершается через и+1 такт, когда устанавливается в "1" разряд n+1 второго сдвигового регист- 5 ра.18. Состояние триггера 16 в зависимости от типа операции после n+1-го такта определяет следующее:

i) в операции А+В единичное состояние триггера 16 определяет наличие 10 переполнения мантиссы. В этом случае вырабатывается еще один такт, в котором осуществляется сдвиг вправо на одну цифру первого сдвигового регистра 17. В освободившиеся разряды через 15 группу элементов ЗАПРЕТ 20 и первый элемент И-ИЛИ 21 записывается цифра

0001 (в двоичном представлении).

Сдвинутым синхросигналом измененная мантисса результата переписывается 20 во второй регистр 3 мантиссы;

6) в операции А+В нулевое состояние триггера 16 свидетельствует о том, что мантисса результата представлена в дополнительном коде. В 25 этом случае через элемент И 22 на вы.ход 35 устройства выдается признакпредставления мантиссы в дополнительном коде.

В заявляемом устройстве мантисса 30 результата получается нормализованной, т,е. старшая цифра мантиссы не равна нулю. Так как формирование результата осуществляется последовательно, цифра за цифрой, на промежу- 35 точных шагах необходимо осуществлять анализ очередной цифры результата и оценивать необходимость перезаписи результата из первого сдвигового регистра 17 во второй регистр 3 ман- 40 тиссы. В противном случае после завершения операции может сформироваться ненормализованный результат. Функцию анализа очередной цифры результата и необходимость перезаписи из, 45 первого сдвигового регистра 17 во второй регистр 3 мантиссы осуществляет первый шифратор 14.. Анализируется цифра результата, равенство нулю предыдущей цифры, признак конца операции, равенство нулю всех предыдущих цифр, наличие выходного переноса, наличие входного переноса, тип операции (А+В или А+В), а также необходимость нормализации результата. В зависимос-55 ти от соотношения этих факторов опредЕляется необходимость перезаписи содержимого первого сдвигового регистра 17 во второй регистр 3 мантиссы.

69 !2

В операции А+В цифра результата всегда получается в прямом коде. Если эта цифра равна "0 и отсутствует выходной перенос, перезапись иэ пер- вого сдвигового регистра 17 во второй регистр 3 мантиссы блокируется. При этом во втором регистре 3 мантиссы сохраняется предыдущий результат.

Например, если во втором регистре 3 мантиссы находится информация

7000101119D00(шестнадцатеричное представление), а после очередной операции A+B сформулирована цифра результата "0" без выходного переноса, в первом сдвиговом регистре 17 после сдвига вправо формируется результат

0700010119DO, и во втором регистре 3 мантиссы результат 700010119DOO остается без изменений. Если одновременно с цифрой результата, равной "0" формируется условие выходного переноса, во второй регистр 3 мантиссы переписывается значение первого сдвигового регистра 17, равное 0700010119DO.

В операции А+В результат может быть представлен как в прямом, так и в дополнительном коде. Так как представление результата становится известным только после завершения операции, на промежуточных шагах анализ перезаписи результата из первого сдвигового регистра 17 во второй регистр 3 мантиссы отличается от описанного для операции А+В.

В результате текущего такта операции можно сформировать цифры 0,1-E и F в зависимости от величины содержимого текущей цифры результата, передача из первого сдвигового регистра i7 во второй регистр 3 мантиссы может быть разрешена или блокирована.

Если содержимое цифры результата находится в диапазоне 1-Е, передача из первого сдвигового регистра 17 в регистр 3 мантиссы разрешена.

Если цифра результата равна О, необходимость блокировки передачи из первого сдвигового регистра 17 во второй регистр 3 мантиссы определяется наличием входного и выходного переносов:

q) цифра результата равна О, от- сутствуют входной и выходной переносы — в этом случае есть блокировка передачи.

За исключением случая обработки последней цифры результата. Если п+1-й разряд второго сдвигового регистра устанавливается в единицу и

13159

l3 цифра .результата равна нулю беэ входного и выходного переноса (т.е. результат получился в дополнительном коде), блокировка отсутствует, Например, иэ АОС вычесть 3FE. В этом примере А=АОС, В=ЗРЕ, а В=С01. Вычитание осуществляется за три такта (условно

Т„, Т, Т ). Так как операнд В должен быть йредставлен в дополнительном коде, в такте Т надо учитывать вход-fp ной перенос (+1):Т„ -С+1+1=Е (цифра результата равна Е, выходной перенос отсутствует — нет блокировки передачи); Т вЂ” 0+0+0=0 (цифра результата равна О, выходной перенос отсутству- f5 ет — есть блокировка передачи);

Тз-.À+Ñ+0=6 (цифра результата равна 6, .есть выходной перенос — нет блокировки передачи, результат получен в прямом коде). 20

Результат операции А+В+1 6ОЕ. Тот же результат получается при вычитании из АОС числа 3FEi

6 ) цифра результата равна О, есть входной перенос, есть выходной перенос — в этом случае блокировка передачи есть.

Например, из FÎC вычесть F07. В этом примере A=FOC, B=F07I à B=OF8, Вычитание осуществляется эа три такта 30 (условно Т„, Т, Т ). Так как операнд

В должен быть представлен в дополни,тельном коде, в такте Т„ надо учитывать входной перенос (+1):

T„ †. C+8+1=5 (цифра результата равна 5, есть выходной перенос — нет блокировки передачи); T> — 0+F+1=0 (цифра результата равна О, есть входной и выходной переносы — есть блокировка передачи, при этом в первом Щ сдвиговом регистре 17 будет число

05, во втором регистре 3 мантиссы число 5); T> — F+O+1=0 (цифра результата равна О, есть входной и выходной переносы — есть блокировки 45 передачи. Результат получен в прямом коде и он нормализован — во втором регистре 3 мантиссы находится число 5.

Результат операции А+В+ 1=5, тот же результат получается при вычитании из FOC числа FO7;

В) цифра результата равна О, есть входной перенос, нет выходного пере- 55 носа — такая ситуация возникнуть не может, так как для получения цифры результата, равной О, с учетом входного переноса сумма двух цифр равня69 14 лась F. Тогда сложение F с входным переносом даст в результате "О", но при этом появляется выходной перенос;

a) цифра результата равна О, нет входного переноса, есть выходной перенос — в этом случае блокировка есть, однако, если перед этим осуществлялись блокировки передачи, вызванные равенством цифры результата величины F, вся информация, накопIt I I ленная в первом сдвиговом регистре 17 до получения результата О, переписывается во второй регистр 3 мантиссы.

Например, в первом сдвиговом регистре 17 находится число РМГ7, во втором регистре мантиссы — число 7, очередная цифра результата равна "О" и есть выходной перенос — в первом сдвиговом регистре 17 значение числа становится равным OFFF7, во втором регистре 3 мантиссы — FFF7.

Но если перед получением нуля с выходным переносом без входного был тоже. ноль, блокировка есть, а информация, накопленная в первом сдвиговом регистре 17, не переписывается во второй регистр мантиссы. Если предыдущая цифра равна нулю, устанавливается в единицу одиннадцатый триггер 73. Например, из 604 нужно вы- . честь 5F6. Вычитание производится в три такта (Т„, Т2, T ):

T„ — 4+9+1=D (цифра результата равна О, нет выходного переноса, нет блокировки передачи);

Т вЂ” 0+0+0=0 (цифра результата равна О, нет выходного переноса, есть блокировка);

T) — 6+А+0=0 (цифра результатаравна О, есть выходной перенос, есть блокировка).

Результат операции в первом сдвиговом регистре 17 равен 00D а во втором регистре мантиссы 3 нормализованный результат, равный D.

Если цифра результата равна F, необходимая блокировка передачи из первого регистра 17 во второй регистр

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

q) цифра результата равна F, отсутствуют входной и выходной переносы — в этом случае блокировка передачи есть.

Это вызвано тем соображением, что, если результат получен в допол-. нительном коде (например, FF7 и нет носы, блокировка передачи отсутствует;

Т вЂ” Р+Р+1=Р (цифра результата равна F есть входной и выходной переносы, блокировка передачи отсутствует);

Т вЂ” 1+Е+ 1=0 (цифра результата равна 0, есть входной и выходной переносы, блокировка передачи есть.

Окончательный результат в первом сдвиговом регистре 17 — OFA, во втором регистре 3 мантиссы FA; результат представлен в прямом коде, так как последняя цифра имела выходной . перенос);

S) цифра результата равна F, есть входной перенос, нет выходного переноса — в этом случае блокировка передачи есть, но при этом вся предыдущая информация из первого сдвигового регистра 17 переписывается во второй регистр 3 мантиссы (так как это есть первый ноль, представленный в дополнительном коде) °

Например, в первом сдвиговом регистре 17 находится число ООООС 4, во втором регистре 3 мантиссы при этом хранится число С4. Если очередная цифра результата равна F (с учетом входного переноса), во второй регистр 3 мантиссы переписывается число ООООС4, а в первом сдвиговом регистре 17 будет число РООООС4.

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

Перевод содержимого первого сдвигового регистра 17 в прямой код дает результат ОРРРРЗС (ненормализованный), а перевод содержимого регистра 3 мантиссы — результат РРРРЗС (что и необходимо);

1) цифра результата равна F, есть выходной перенос, нет входного пере- носа — такая ситуация возникнуть не может.

Блокировка передачи из первого сдвигового регистра 17 во второй регистр 3 мантиссы отсутствует, если необходимо выполнить операцию без нормализации результата.

Характеристика результата операнда формируется сумматором 5 характеристики по содержимому третьего регистра 4 характеристики. Если выпол- няется операция без нормализации результата, характеристика результата изменений не претерпевает. Если вы15 1315969 16 выходного переноса), при переводе его в прямой код он получится ненормализованным (в данном случае 009).

Поэтому во втором регистре 3 мантиссы должен быть результат 7, который при переводе в прямой код даст ре. зультат 9. Более подробно это видно из следующего примера: из 104 вычесть 106. В этом примере A=104, В=106, а В=ЕР9. Вычитание осуществ- 10 ляется за три такта (условно Т, Т, Т ). Так как операнд В должен быть представлен в дополнительном коде, в такте T надо учитывать входной перенос (+1): 15

Т„- 4+9+1=Е (цифра результата равна Е, нет выходного переноса— нет блокировки передачи);

Т вЂ” 0+F+0--F (цифра результата

2 равна F переносы отсутствуют — бло- 20 кировка передачи есть, в первом сдвиговом регистре 17 будет результат FE, во втором регистре 3 мантиссы остается число Е);

Тз — 1+Е+О=Р (цифра результата 25 равна F переносы отсутствуют — блокировка передачи есть, конечный результат в первом сдвиговом регистре

17 будет FFE, конечный результат во втором регистре 3 мантиссы будет 3О

Е, он представлен в дополнительном коде. При переводе в прямой код получается нормализованное число — 2).

В случае, если вновь полученной цифре Результата, paBHDH F,предшест 35 вуют ранее полученные цифры результата, все равные нулю, блокировка передачи отсутствует. Свидетельствует о содержимом полученной части результирующей мантиссы триггер 72, который устанавливается в "1" в случае, если хотя бы одна очередная цифра результата не равна нулю. При этом она переписывается во второй регистр 3 мантиссы, но включается 45 условие анализа необходимости блокировки в случае получения цифры результата, равной F, без выходного переноса;

6) цифра результата равна Р, есть SO входной и выходной переносы — в этом случае блокировки передачи нет. Например, из числа 1РС вычесть число

102. В этом примере A=iFC, В=102, а

B=EFD. Вычитание осуществляется за три такта (Т„, Т, Т ), в первом такте учитывается входной перенос.

Т„-С+О+1=А (цифра результата равна А, есть входной и выходной пере-, 17

13159 полняется операция нормализации с нормализацией результата, характеристика результата модифицируется.

Модификация осуществляется путем уменьшения характеристики большего операнда, хранящейся в третьем регистре 4 характеристики на величину, содержащуюся во втором счетчике 12. .Уменьшение осуществляется на сумма торе 5 характеристики, на выход А кото- 1Р

1рого через первую группу элементов

И-ИЛИ 9 подается характеристика большего операнда из третьего регистра 4, а на вход В сумматора 5 характеристики через вторую группу элементов И-ИЛИ 15

10 — содержимое второго счетчика 12.

Для сумматора 5 характеристики задается режим A+B в результате чего на выход 33 устройства выдается сформированная характеристика реэуль-20 тата.

В случае возникновения переполнения мантиссы результата осуществляется сдвиг мантиссы вправо на одну цифру. При этом характеристика долж- 25 на быть увеличена на "+1". Операция суммирования осуществляется сумматором 5 характеристики путем задания на нем операции А+В. Операнд В в этом случае равен "0, поэтому харак-3р теристика результата (с учетом входного. переноса) получается из суммы

А+О+1.

Второй счетчик 12 содержит число старших цифр, равных "0" (для прямо- 35 го кода) или "Г" (для дополнительного кода), которые отбрасываются при получении нормализованной мантиссы результата. Так как результат во втором регистре 3 мантиссы формиру- 10 ется за и+1 такт, константа модификации характеристики во втором счетчике 12 формируется за и+1 такт.

Второй счетчик 12 имеет два режи- д5 ма работы, определяемые состоянием управляющего входа S:

ct) $ = Π— прямой счет „

<) S = 1 — занесение. В режиме прямого счета второй счетчик 12 находится в том случае, когда блокируется передача из первого сдвигового регистра 17 во второй регистр 3 мантиссы. При этом в каждом такте блокировки осуществляется модификация второго счетчика 12 на

"+ 1 . В режиме занесения второй счетчик 12 находится в том случае, когда

I .передача из первого сдвигового ре69 1 18 гистра 17 во второй регистр 3 мантиссы разрешена или когда происходит переход от подсчета нулей (в прямом коде) к подсчету F (в дополнительном) или наоборот.

Формирование константы модификации характеристики осуществляется в зависимости от типа операции и от состояния очередной цифры результата по следующим правилам:

a) в операциях без нормализации результата второй счетчик 12 находится в режиме занесения, в каждом такте формирования результата в него заносятся нули;

6) в операции сложения с нормализацией результат получается в прямом коде. При этом в каждом такте формирования результата в случае блокировки передачи из первого сдвигового регистра 17 во второй регистр 3 мантиссы модифицируется второй счетчик

12 на "+1". В каждом случае снятия блокировки и передачи мантиссы во второй регистр 3 мантиссы осуществляется сброс второго счетчика 12 путем записи в него нулевой константы; в) в операции вычитания с