|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Правила сложения Д1-кода
Рассмотрим таблицу возможных значений выходов двоично-десятичного сумматора.
Табл. 1
Из таблицы 1 видно, что при сложении чисел в Д1-коде могут возникнуть следующие случаи:
1. S*i=Ai + Bi + Pi-1 < 10, тогда Pi(10)=0 и правильный результат получают без коррекции. Другими словами, если сумма двух двоично-десятичных цифр и переноса из младшего разряда Ai + Bi + Pi-1 меньше 10 (1010), то число на выходе сумматора будет истинной суммой, которая представляется четырьмя двоичными разрядами , а перенос в старший разряд Pi(10) равен нулю (Зона разрешенных комбинаций Зона 1).
2. S*i=Ai + Bi + Pi-1 > 10, тогда Рi(10)=1, а результат требует коррекции. В этом случае сумма двух двоично-десятичных цифр и переноса из младшей тетрады будет находится в пределах от 10 (1010)2 до 19 (10011)2. Для получения правильного результата необходимо выработать сигнал переноса в старший десятичный разряд Рi(10) и вычесть число 10 (1010) из полученной суммы. Вместо вычитания 10 (1010) для формирования истинной суммы с помощью дополнительных сумматоров выполняется сложение с дополнительным кодом “-10” (-1010), т.е. прибавление числа 6 (0110). Перенос из старшего разряда второй ступени сумматоров при этом не используется, поэтому операция прибавления 6 (0110) равноценна вычитанию 10 (1010). Из вышесказанного следует, что схема двоично-десятичного сумматора в Д1-коде должна состоять из двух ступеней четырехразрядных двоичных сумматоров и схемы формирования переноса в старший десятичный разряд Pi(10). Схема формирования переноса проектируется с использованием таблицы (Табл.3), входными аргументами которой являются выходные сигналы первой ступени сумматора , а выходным – функция Pi(10).
Минимизируя с помощью карты Карно получаем уравнение, по которому и реализуем схему формирования Pi(10).
P4 S*4 Pi(10)
Тогда схема комбинационного одноразрядного двоично-десятичного сумматора с кодом Д1 (8421) будет иметь вид (Рис1) где: А= а4а3а2а1 B=b4b3b2b1 - промежуточное значение суммы (т.е. двоичная сумма) - окончательный результат суммирования (т.е. двоично-десятичная сумма) Pi(10) – десятичный перенос в старший разряд. Pi-1(10) – десятичный перенос из младшего десятичного разряда. разряда.
Работает двоично-десятичный сумматор следующим образом: Десятичные разряды чисел А и В представляются четырехразрядными двоичными числами а4а3а2а1 и b4b3b2b1, которые одновременно с переносом Pi-1(10) подаются на соответствующие входы четырех одноразрядных двоичных сумматоров SM1…SM4. На этих сумматорах происходит сложение двух четырехразрядных слагаемых по правилам двоичной арифметики.
Рис.1 Схема одноразрядного двоично-десятичного сумматора в Д1-коде
Если сумма A+B+Pi-1(10)<10, то перенос Pi(10) будет равен нулю и на второй ступени сумматоров SM5…SM7 будет осуществляться суммирование числа, полученного на выходах с нулем. Таким образом на выходе получим число
= .
Если сумма A+B+Pi-1(10) > 10, то с помощью схемы И1, И2 и ИЛИ формируется перенос Pi(10)=1. Но если Pi(10)=1, то на входы второй ступени сумматоров SM5…SM7 подается число в (0110), на другие входа которого поступают сигналы с соответствующих выходов первой ступени сумматоров SM1…SM4(S4*S3*S2*S1*). Перенос из старшего разряда сумматора при этом (с выхода SM7) не используется, поэтому операция прибавления 6(0110) равноценна вычитанию 10(1010).
Например при сложении А=0100 и В=1001 получаем S*= 1101(где S*-промежуточная сумма). При этом, на выходе схемы формирования переноса образуется 1 (т.е. Pi(10)=1). Эта “1” поступает на входы SM5 и SM6, т.е. формирует число 6(0110),которое складывается с числом 1101.На выходе второй ступени сумматоров SM5…SM7 получаем число 0011. В результате получаем сумму равную 1.0011 (т.е. 13).
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |