КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Формальные правила поразрядного сложения в Д-кодах
Представление десятичных чисел в Д-кодах ВЫПОЛНЕНИЕ ОПЕРАЦИЙ НАД ДВОИЧНО-ДЕСЯТИЧНЫМИ ЧИСЛАМИ
Операции над десятичными числами (десятичная арифметика) часто включается в состав основных команд универсальных компьютеров. Кроме того, десятичная арифметика широко реализуется в электронных калькуляторах и персональных компьютерах. Поэтому кроме общей информации о возможности представления десятичных чисел разработчику необходимо знать и алгоритмы выполнения арифметических операций. Двоично-десятичный код (Д-код) десятичного числа, как уже отмечалось, это такое его представление, в котором каждая десятичная цифра изображается четырьмя двоичными разрядами (тетрадой из двоичных символов): A = {a4,na3,n a2,n a1,n}n {a4,n-1 a3,n-1 a2,n-1 a1,n-1}n-1... {a4,0 a3,0 a2,0 a1,0}0,
где ai,j _ двоичные разряды тетрады, i - номер разряда внутри тетрады, j - номер самой тетрады. Для однозначности перевода чисел в Д-код и обратно желательно, чтобы разряды тетрад имели определенный вес. Тогда значение десятичной цифры ai соответствует выражению: ai = a4d4 + a3d3 + a2d2 + a1d1, где di - вес разряда тетрады. Максимальное допустимое число в тетраде - 9. Если возникает число 10 и больше, то единица переходит в следующую старшую тетраду. Существуют различные Д-коды. Мы будем рассматривать Д-код, вес разрядов тетрады которого следующий: 8, 4, 2, 1. Этот код называется также кодом Д1 прямого замещения. Но есть Д-коды с тетрадами: 5, 1, 2, 1; 2, 4, 2, 1 и т.д. Указанные комбинации в этих Д-кодах разрешены. Все другие комбинации - запрещены. Наличие разрешенных и запрещенных комбинаций - очень важное свойство Д-кодов. Оно отличает их от обычных позиционных систем счисления, в которых все комбинации - разрешенные. В рассматриваемом Д-коде прямого замещения (8421) разрешенные комбинации соответствуют двоичным эквивалентам десятичных цифр с весами разрядов, равных степеням основания 2. Этот Д-код чаще всего используется в различных компьютерах. В таблице 5.1 приведены примеры записи некоторых десятичных чисел в коде Д1 прямого замещения. Т а б л и ц а 5.1 Десятичные цифры Код Д1 Десятичные цифры Код Д1 Десятичные цифры Код Д1 0 0000 10 0001 0000 20 0010 0000 1 0001 11 0001 0001 21 0010 0001 2 0010 12 0001 0010 22 0010 0010 3 0011 13 0001 0011 33 0011 0011 4 0100 14 0001 0100 34 0011 0100 5 0101 15 0001 0101 45 0100 0101 6 0110 16 0001 0110 56 0101 0110 7 0111 17 0001 0111 67 0110 0111 8 1000 18 0001 1000 78 0111 1000 9 1001 19 0001 1001 89 1000 1001
Для определения формальных правил поразрядного сложения чисел, представленных в Д-коде, рассмотрим те особенности, которые присущи этим кодам. 1. Наличие разрешенных и запрещенных комбинаций. Появление запрещенной комбинации при выполнении каких-то действий над числами свидетельствует о возникновении ошибки или же о необходимости ввести корректировку результата. 2. При сложении тетрад возникает потетрадный перенос, т.е. перенос 1 в старшую тетраду, вместо десятичного поразрядного переноса. Введем правила сложения Д-кодов. При сложении чисел в Д-коде могут возникнуть следующие случаи. 1. При сложении двух тетрад в данном разряде числа образуется сумма меньше 10, значит не требуется коррекции результата. Например: сложить две тетрады a = 0100, b = 0101 при условии, что нет переноса из младшей тетрады. с = 0100 + 0101 = 1001. Результат меньше 10. 2. Свидетельством того, что результат суммирования неправильный, является либо появление запрещенной комбинации, если 15 с 10, либо появление потетрадного переноса p = 16, что превышает значение десятичного переноса на 6. Следовательно, требуется коррекция результата в данной тетраде введением поправки, равной +0110 = 6(10). Например: 1) Сложить a = 0101, b = 1001, при наличии переноса из младшей тетрады: p = 1: c = a + b + p = 1111 - запрещенная комбинация и нужна поправка: + 0110 [1] 0101 т.е. результат в данной тетраде равен 0101 и образован перенос в старшую тетраду. 2) Сложить 2 тетрады a = 0111, b = 1001, p = 1 c = a + b + p = [1]0001 появился потетрадный перенос и требуется коррекция результата: с = 0001 + 0110 = 0111, p = 1 - перенос в старшую тетраду. Рассмотрим еще один пример: сложить a = 27910 = 0010 0111 10012, b = 58110 = 0101 1000 00012 a = 0010 0111 1001 + b = 0101 1000 0001 0111 1111 1010 + 0110 0110 поправки с = 1000 0110 0000 Здесь стрелка указывает передачу 1 десятичного переноса. Ответ: с = 1000011000002 = 86010. Сумматор одной тетрады, предназначенный для формирования сумматоров чисел представленных в Д-коде прямого замещения может быть реализован следующим образом:
Дата добавления: 2014-01-06; Просмотров: 517; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |