Раздел: Документация
0 ... 85 86 87 88 89 90 91 ... 119 т.е. вычисляется дополнение W = wswwwwwq, где w{ = /?,-, г = 0,1,...,6. Знаковый разряд /?7 = х7 при [Х]п / 1.0000000. Если прямой код [Х]п = 1.0000000 (отрицательный нуль), то [Х]д = 1.0000 0000+ 1 = 0.00000000. При использовании схемы на рис. 6.104,а в качестве преобразователя дополнительного кода в прямой необходимо выполнять условие < 27 - 1 = 127 ([Х]д ф 1.0000000, так как число -128 в 8-разрядном прямом коде представить невозможно). На рис. 6.104,5представлена схема, выполняющая операции Г X + У, если SUB = о, ~ I X - У, если SUB = 1, где X = x6...XiXQ > 0, У = У6-.-У1У0 > 0 - 7-разрядные двоичные числа, S = S7S6 • • -si-so - сумма или разность чисел А" и У в дополнительном коде, SUB (Subtract - вычитание) - сигнал управления операциями сложения и вычитания. Действительно, при SUВ = 1 сумма 0.А + 1.У + 1 = [5]д = S7.S6S5S4S3S2S1S0, где У = у6у&у4УзУ2у1у0. Урэ- *р2 " Ур2 " *pl v/ . -j JJi хрО " УРо-
Ь-ЕЬ
SP3 ~p2 Рис. 6.105 SM I cow >*2 ►с. Рис. 6.106 На рис. 6.105 показана схема одноразрядного десятичного сумматора для чисел, представленных в коде с избытком 3 (см. § 6.9). На вход левого двоичного сумматора подаются разряды {Ар} = хрзхР2хР1Хр0, {Ур} = УрзУг>2Ур1Уро и перенос из предыдущего десятичного разряда ср. Данный сумматор вычисляет сумму S* = {Хр} + {Ур}. Если перенос в следующий десятичный разряд ср+] - 0, то на правый сумматор подается число 1101 = 13, а если cp+i = 1, то подается число ООП = 3. На выходе этого сумматора получается значение суммы {Sp} = •Sp3Sp2Sp,Sp0 разрядов Хр и Ур, представленной в коде с избытком 3. Сложение вспомогательной суммы S* с числами 3 и 13 называется коррекцией суммы и выполняется правым сумматором (рис. 6.105). Следует иметь в виду, что возникающий при коррекции перенос теряется (не передается в следующую тетраду). С помощью последовательного соединения п таких одноразрядных сумматоров можно получить n-разрядный десятичный сумматор. Десятичные сумматоры. Разряды тг-разрядных положительных десятичных чисел А, У и суммы 5, представленных в коде 8-4-2-1, будем записывать в виде тетрад Ар = xPiXp2xpiXp0, Yp - УрлУргУр\Уро.1 Sp = sP3sP2sPlspo, где p = 0,1,..., n- 1. Разряды слагаемых 0 < Ар < 9, 0 < Ур < 9 и суммы 0 < Sp = (Хр + Ур + ср)э < 9 (сумма вычисляется по модулю 9). Перенос в следующий разряд cp+J = 1 только при Sp > 10. В дальнейшем для простоты индекс р, указывающий номер разряда, будем опускать, обозначив Ар = А, Ур = У, Sp = 5, ср = с0 и ср+1 = с\. Таблица 6.21. Десятичный сумматор в коде 8-4-2-1
Проще всего десятичный сумматор может быть построен на 4-разрядном двоичном сумматоре, вычисляющем сумму S = X + У + с0 = s3s2s[s0 и перенос с\, и преобразователе CONV (Converter) этой суммы в сумму S и перенос с\ (рис. 6.106). Максимальное значение
Рис. 6.107 Для вычисления разности разрядов X и Y десятичных чисел необходимо использовать преобразователь разряда Y в дополнение W до 9 на основании соотношений: W = 9 - Y. В соответствии с этим функционирование преобразователя описывается табл. 6.22. Составив по ней диаграммы Вейча (рис. 6.108), получим: w3 = X3X2X~i, w2 = х2 © Xi, Wi = Xi,W0 = x0.(6.52) Выпускаемые в интегральном исполнении десятичные сумматоры и преобразователи десятичного числа в дополнение до 9 строятся по описанным выше методам. На рис. 6.109 приведены ИС: Таблица 6.22. Преобразователь кода 8-4-2-1 в дополнение до 9
Уз Уг
У1
Уо МС\4560В
Рис. 6.108 МСХ4561В СМР9 э - СМ), is - V GHD,14 - V б - НС F5B3 i з 11 о 1
6 - GHD,te - V суммы S = 9 + 9 + 1 = 19. На основании приведенного описания десятичного сумматора составляется таблица истинности (табл. 6.21), из которой видно, что функции не зависят от переменной sq, а значит, ее можно исключить из рассмотрения (номера клеток диаграмм Вейча будут определяться числами i = CjS3s2Sj). Непосредственно из табл. 6.21 следует, что младший разряд суммы so = s0. Составив диаграммы Вейча для остальных функций (рис. 6.107), получим: с\ = с{г V CjS2Sj, s3 = cxsx V s3s2s\, s2 - c[s2 V c\sx V s3tx, si = cisj V s3s[ V s VcJ. МСЫ560В, 74.F583 - одноразрядные десятичные сумматоры; МСЫ561В - преобразователь десятичного числа в дополнение до 9, описываемый функциями Fi = Z (xtCM V WiCM), где CM = СМ\СМ2 (CM - Complement - дополнение) - сигнал управления преобразователем (F, = я; при СМ = 0 и Z = 1, Fi = wi при СМ = 1 и Z = 1), Z (Zero - нуль) - сигнал установки нулевого значения выходов, W{ - функции, описываемые выражениями (6.52), А{ = ц.- Каскадирование десятичных сумматоров для получения устройства, выполняющего операции сложения и вычитания двухразрядных десятичных чисел А = А\А0 и В = В\Вп, показано на рис. 6.110. Сигнал SUB (Subtract - вычитание) используется для управления операциями сложения и вычитания (SUB = 0 - сложение, SUB =1 - вычитание). Преобразователи МС14561В выполняют функции А при SUB = 0, 99- Л при SUB=l, так как двухразрядные десятичные числа А = АуАп = Л1Ю1 + Л0Ю° и F = FjF0 = FjlO1 -(- Fo10° (j = 0 и 1). Сумматоры A/C14560i? вычисляют величину S = В + F + со (со = SUB), поэтому Г В + А, если SUB = 0, 5 -5,50-1 m+{B A),ecmSUB=hI6-53) При вычитании сумма может получиться как положительной, так и отрицательной. Из выражения (6.53) при SUB - 1 следует, что Г А3при SUB = 0, Г J ~ \ 9 - Aj при SUB= 1, F ~ FlFo ~ { Ч В - А, если В - А > 0 (с2 = 1), дополнение до 100, если В - А -СО (с2 = 0), т. е. сумма 5 представляется в десятичном дополнительном коде. Знаковым разрядом является перенос с2. Понятно, что при сложении разрядная сетка не должна переполняться (требуется выполнение условия В -f А < 99). Последовательные двоичные сумматоры. Принцип работы и синтез последовательных двоичных сумматоров был рассмотрен в § 4.3. Функции, выполняемые последовательными сумматорами, могут быть расширены введением дополнительных управляющих сигналов. На рис. 6.111 приведены ИС: (Чю-U03- SUB -2-
*1<
г, Гц
Sic 555ИМ7 Рис. 6.110 МС14032В MCI 4038В ft* SM sb,- ia 14 Sfll AZ B2 SB2 ДЗ S3 SB3 Д4 B4 SI S2 S3 S,
S4 SM FI F2 F3 В" ЩВ1 s . i РЭ P3 SM FI F2 F3 - SB 4 to - SHI), 20 e - GMD, ie 6 - cm), IE 0 ... 85 86 87 88 89 90 91 ... 119
|