Студопедия

КАТЕГОРИИ:


Архитектура-(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=mA*qPA;

B=mB*qPB;

C=mc*qpc;

D=mD*qPD.

Тогда

C=AxB=(mAxmB)qPA+PB, т.е. mc=mAxmB, pc=Pa+Pb.

D=A/B=(mA÷mB)qPA - PB, т.е. mD=mA÷mB, pD=Pa - Pb.

Таким образом, умножение чисел с плавающей запятой сводится к двум операциям (умножение мантисс и сложение порядков) над числами с фиксированной запятой, а деление — к делению мантисс и вычитанию порядков — также к двум операциям с фиксированной запятой, которые были подробно рассмотрены выше.

(Страница77)

При использовании в ЦВМ десятичные числа кодируются группой двоичных разрядов. Учитывая, что

log210≈3, 32, (3.31)

для представления одной десятичной цифры требуется не менее четырех двоичных разрядов. Соответствие между десятичной цифрой и ее двоичным представлением называют двоичным кодом десятичной цифры. Наиболее естественным представляется кодирование десятичных цифр позиционными двоичными кодами с естественными весами разрядов. Такой код принято называть кодом "8421".

Ясно, что это далеко не единственный способ кодирования десятичных цифр. Используя только четырехразрядные двоичные коды, следует выбрать 10 из шестнадцати возможных комбинаций для представления цифр. Количество способов, которыми могут быть выбраны 10 комбинаций из 16, равно числу сочетаний из 16 по 10:

После того как выбор комбинаций сделан, можно Р10=10! способами сопоставить комбинацию десятичной цифре. Таким образом, общее число различных четырехразрядных кодов десятичных цифр составляет

Практически лишь 5 — 6 различных кодов используют в ЦВМ для представления десятичных цифр.

Основной недостаток кодирования десятичных цифр в коде "8421" состоит в несоответствии веса десятичного и шестнадцатеричного переносов. Действительно, перенос из тетрады шестнадцатеричной цифры имеет вес 16, а десятичный перенос — 10.

Для устранения этого противоречия можно выбрать другие способы кодирования десятичных цифр. Например, код " 8421+3" (иногда его называют код с избытком три) позволяет при сложении получать сумму "с избытком 6", при этом вес переноса соответствует десятичному.

Можно подобрать такие веса двоичных разрядов при кодировании десятичных цифр, чтобы их сумма равнялась 10, Например, код "5211" обладает именно таким свойством. При этом, однако, нарушается свойство функциональности соответствия десятичных цифр и их двоичного представления. Например, цифра 7 может быть представлена как 1100 или как 1011. Для преодоления этого недостатка достаточно договориться, чтобы в подобных ситуациях всегда сначала заполнялись младшие разряды кода.

(Страница78)

В табл. 3.5 приведены упомянутые двоичные коды десятичных цифр.

Таблица 3.5. Двоичные коды десятичных цифр

Цифры Код "8421" Код "8421+3" Код "5211"
       
       
       
       
       
       
       
       
       
       

Арифметические операции над десятичными числами можно выполнять как на специальных десятичных сумматорах (в этом случае можно применять любую кодировку десятичных цифр), так и на обычных двоичных сумматорах. В последнем случае десятичные числа обрабатываются по правилам двоичной арифметики, и десятичный результат операции, естественно, нуждается в коррекции. В этом случае сложность коррекции и длительность ее реализации существенно зависят от выбранного кода.




Поделиться с друзьями:


Дата добавления: 2015-04-25; Просмотров: 1091; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.