Пред.
След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
Глава 6. ДВОИЧНО-ДЕСЯТИЧНАЯ АРИФМЕТИКА6.1. СЛОЖЕНИЕ В ПРЯМЫХ Д-КОДАХВ двоично-кодированном представлении десятичного числа каждая десятичная цифра изображается тетрадой двоичных символов где — десятичная цифра разряда; а — двоичная цифра тетрады. Полученный таким образом десятичный код, кодированный двоичными символами, для краткости называют Д-кодом. Имеется некоторое множество Д-кодов, Оно обусловливается наличием всего 10 разрешенных из 16 возможных комбинаций, которые допускает тетрада. Наличие запрещенных комбинаций в Д-кодах отличает их от обычных позиционных систем счисления, в которых все комбинации — разрешенные. Из всего множества известных Д-кодов наибольшее распространение в вычислительной технике получили код прямого замещения (система 8421) и с избытком 3 (система 8421 + 3). Из-за запрещенных комбинаций, при сложении чисел в любом из Д-кодов возникают необходимость в коррекции результата и трудности в формировании десятичного переноса в следующую тетраду. Особенности сложения чисел в каждом из Д-кодов различны, поэтому рассмотрим их раздельно. При этом будем считать, что заданы числа А — и где — двоично-кодированные десятичные цифры (тетрады). Необходимо получить; причем
где — десятичные переносы; основание системы счисления. Так как наибольшее десятичное одноразрядное число равно с учетом переноса в данный разряд, значение результата разрядного суммирования лежит в пределах от 0 до 19. При этом единица во втором разряде представляет собой десятичный перенос в следую тетраду, а сумма получается в двоичном коде, отличном от требуемого двоично-десятичного представления, т. е. она требует коррекции. Код Д1 При сложении чисел в коде могут возникнуть следующие случаи: 1 Если то при выполнении действий над разрядами тетрады по правилам двоичной арифметики сразу получается правильный результат. 1 Если то возникает десятичный перенос. Поэтому сумма в данной тетраде должна быть равна:
где При этом признаком неправильного результата является в одном случае возникновение потетрадного переноса во втором — появление запрещенной комбинации, если . В любом из этих случаев необходимо скорректировать результат в данной тетраде введением поправки что приведет к возникновению потетрадного переноса и во втором случае. Коррекция обусловлена тем, что каждый перенос уносит с собой из данной тетрады 16 единиц, а приносит в следующую только 10 единиц. Пример. Сложить тетрады при
Так как требуется коррекция результата
Пример. Сложить при
Так как величина принадлежит к запрещенным комбинациям, то необходимо ввести поправку вида
Таким образом, если в тетраде сумма цифр с переносом из тетрады меньше 10, то сложение производится без поправок; если же сумма цифр с переносом равна или больше 10, то происходит коррекция результата тетрады введением поправки а возникающий при этом перенос прибавляется к содержимому и тетрады. При этом, если в нескольких тетрадах, начиная с разрядная сумма равна 1001, то перенос приведет к формированию запрещенной комбинации в тетраде. В результате этого потребуется коррекция, которая приведет к запрещенной комбинации в тетраде и т. д. Следовательно, из-за последовательного распространения потетрадных переносов время сложения в коде составит в худшем случае тактов, где — количество тетрад. Обычно схемы строят таким образом, чтобы перенос, возникающий при прибавлении тетрадной поправки, проходил сквозь тетрады, в которых предварительная сумма равна и сбрасывал их в 0. При этом сумма всегда формируется за два такта. Пример. Сложить числа
Стрелкой показаны единицы потетрадных переносов. Код Д2 При сложении чисел в коде возможны следующие случаи о учетом того, что где — тетрады кода Если т. е. результат необходимо скорректировать на величину (. Если же то Здесь возникает десятичный перенос, который при переходе в старшую тетраду меняет свой вес с 16 на 10. Поэтому в этом случае требуется поправка результата на величину Сумматоры не производят операцию вычитания, поэтому поправка осуществляется прибавлением в данную тетраду числа и блокированием возникающего при этом переноса из данной тетрады в старшую, который имеет значение
Пример. Заданы в коде Найдем сумму
При сложении в коде возникает проблемы сквозного перенос. и операция сложения выполняется в два такта. Это объясняется тем, что если в нескольких тетрадах сумма до прибавления поправки равна , то при поступлении переноса из тетрады в ее содержимое сбросится в 0 и перенос пойдет в тетраду в этом же такте суммирования. В же тетраду во втором такте суммирования будет прибавлена поправка Поэтому коррекция результата осуществляется потетрадно с блокировкой цепей потетрадных переносов. Таким образом, в коде всегда производится коррекция промежуточного результата, полученного путем сложения цифр слагаемых по правилам двоичной арифметики. При этом, если при сложении тетрад не возникает переноса, т. е. то поправка равна Если же возникает потетрадный перенос то поправка в тетраде равна
|
1 |
Оглавление
|