Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Двоично-кодированные системы счисления

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

Для кодирования цифр k -ичной системы счисления двоичными цифрами не-обходимо иметь не менее ] Iog2 k [двоичных разрядов. Здесь и далее запись ] А [означает округление A в сторону ближай­шего большего целого числа, если А дробное. Если считать, что числа, с которыми оперирует ЭВМ, не превосходят N, то относитель­ное увеличение количества оборудования, необходимого для пред­ставле-ния k -ичных чисел при их двоичном кодировании, оценивается функцией

 

Функция = 1, если k = 2 r, r = 1, 2,... В таком случае для представле- ния чисел в двоичной и k -ичной системах требуется одинаковое количество обору- дования. При k функция > 1. Например, в случае k =10

т.е. в двоично-кодированной десятичной системе (двоично-десятич­ной системе) тре-буется примерно в 1,2 раза больше оборудования для представления чисел по сравнению с двоичной системой.

Очевидно, что любой k -ичной цифре можно поставить в соответ­ствие лю- бое из 2 h двоичных чисел, записываемых с помощью h раз­рядов. Следовательно, чис-ло способов двоичного кодирования k цифр равно числу размещений из 2 h по k,т.е. . Это число очень быстро растет с увеличением k, что делает не- возможным анализ ручными методами всех способов двоичного кодирования даже для практически наиболее важного случая k = 10. В связи с этим к настоящему времени исследованы далеко не все способы кодирования десятичных цифр.

Наиболее широкое распространение в ВТ получили двоично-десятичные системы счисления, в которых десятичные цифры запи­сываются как четырехраз-рядные двоичные числа – двоичные тетрады. Иногда используется также представ-ление десятичных цифр с помощью пяти, шести и семи разрядов. В принципе можно постро­ить ЭВМ, работающую при любом двоично-десятичном кодирова- нии. Однако, как показывают теоретические исследования и опыт раз­работки де- сятичных ЭВМ, наилучшие результаты могут быть по­лучены при использовании двоично-десятичных кодов (ДДК), обладающих свойствами единственности, упо-рядоченности, четно­сти, дополнительности и взвешенности (эти свойства называ-ются так­же условиями Рутисхаузера).

ДДК обладает свойством единственности, если между десятич­ной цифрой и комбинацией двоичных цифр установлено взаимно однозначное соответствие. Данное свойство обеспечивает возможность работы с ДДК и облегчает процесс декодирования.

Упорядоченность ДДК состоит в выполнении одного из условий

0 (2) < 1 (2) < … < 9 (2);

0 (2) > 1 (2) > … > 9 (2)

для двоичных представлений 0 (2) , 1 (2) , …, 9 (2) десятичных цифр 0, 1,..., 9. Нали- чие упорядоченности ДДК необходимо для реализации логических операций.

Свойство четности ДДК должно проявляться в том, чтобы всем четным десятичным цифрам соответствовали либо только четные, либо только нечетные двоичные числа. Аналогично всем нечетным десятичным цифрам должны соот-ветствовать либо только нечетные, либо только четные двоичные числа. Это свой- ство упрощает выпол­нение операций умножения, деления и округления.

Сущность свойства дополнительности ДДК заключается в сле­дующем. Если сумма двух десятичных цифр равна 9, то переход от двоичного представления од- ной цифры к двоичному представле­нию другой должен осуществляться путем инвертирования (т. е. замены 0 на 1 и наоборот) двоичных разрядов. Это облег- чает фор­мирование обратного и дополнительного кодов, используемых при опера- ции алгебраического сложения.

ДДК называется взвешенным, если каждому из h разрядов двоич­ного пред-ставления xhxh -1 … x 1 десятичной цифры X поставлены в соответствие веса ah, ah -1 , , a 1 , причем

(3)

Использование взвешенных ДДК облегчает выполнение логи­ческих опера- ций и перевод чисел из одной системы счисления в другую.

ДДК, получающиеся друг из друга простой перестановкой ве­сов ai, обра- зуют кодовую группу, или просто группу. Существует 86 групп взвешенных ДДК, облада­ющих свойством единственности, в ко­торых для представления десятичных цифр используются двоичные тетрады. Среди них есть ДДК, имеющие толь­ко положительные веса, и ДДК с од­ной или двумя отрицательными веса­ми, напри- мер, «8, 4, 2, 1», «8, 4, 2, -1», «6, 3, -1, -1».

Свойством дополнительности обла­дают все взвешенные ДДК с положи­тельными весами, у которых сумма весов равна девяти. Существуют четы­ре груп- пы взвешенных ДДК, обла­дающих одновременно свойствами единственности и дополнительности, а именно: «5, 2, 1, 1», «4, 3, 1, 1», «4, 2, 2, 1», «3, 3, 2, 1». Среди ДДК с от­рицательными весами свойствами единственности и дополнительно­сти обладают девятнадцать групп кодов, приведенных в табл. 2.

Таблица 2

Номер группы Веса разрядов Номер группы Веса разрядов
  8 4 3 -6   6 3 2 -2
  8 4 2 -5   6 3 1 -1
  8 3 2 -4   6 2 2 -1
  7 5 3 -6   5 4 3 -3
  7 5 1 -4   5 3 2 -1
  7 3 1 -2   4 4 3 -2
  6 5 2 -4   4 4 2 -1
  6 5 1 -3   8 6 –1 -4
  6 4 2 -3   8 4 –2 -1
  6 4 1 -2    

 

Свойством упорядоченности могут обладать только ДДК, не имеющие от-рицательных весов. Одновременно свойствами един­ственности, дополнительности и упорядоченности обладают взве­шенные ДДК «5, 2, 1, 1», «5, 1, 2, 1», «4, 3, 1, 1» и «3, 3, 2, 1».

Всеми перечисленными выше свойствами обладают коды «2, 4, 2, 1» и «4, 2, 2, 1» (табл. 3), которые получили название кодов Эмери. Код «2, 4, 2, 1» впервые был использован в швейцарской ЭВМ, а затем получил достаточно широкое распространение в ВТ. Благодаря свойству дополнительности ДДК «2, 4, 2, 1» и «4, 2, 2, 1» переход к об­ратному и дополнительному кодам осуществляется лег­ко, однако искусственный порядок весов несколько затрудняет выполнение арифметических операций.

Таблица 3

Десятичные цифры Двоично-десятичные коды
«8,4,2,1» «2,4,2,1» «4,2,2,1» «7,4,2,1» «5,4,2,1» «С избыт-ком 3» «3 a + 2» «2 из 5» «2 из 7» «Рефлек-сный» «w,x,y,z»
                       
                       
                       
                       
                       
                       
                       
                       
                       
                       

 

Распространенным в ВТ ДДК является взвешенный код «8, 3, 2, 1», назы- ваемый также кодом прямого замещения (табл. 3). Этот код образуется путем за- писи десятичных цифр в двоичной позици­онной системе счисления с естественным порядком весов и обладает всеми перечисленными выше свойствами, кроме свой- ства дополни­тельности. Последнее делает код неудобным при реализации опера­- ции алгебраического сложения из-за трудностей формирования пе­реносов из млад- шей тетрады в старшую. Однако код «8, 4, 2, 1» удобен для машинного перево- да чисел из десятичной системы в дво­ичную и обратно.

В каждом конкретном случае применение какого-либо ДДК обус­лавлива- ется определенными его преимуществами по сравнению с другими ДДК. Напри- мер, взвешенный код «7, 4, 2, 1», приведенный в табл. 3, применялся в элект- ро-механических вычислительных машинах, где двоичной единице соответствова- ло замкнутое реле, а двоичному нулю – разомкнутое реле, причем замкнутое реле потребляло ток от источника питания. В рассматриваемом коде использованы комбинации с минимальным числом единиц, что обес­печивает минимальное по-требление тока от источника питания.

Близким по своим свойствам к коду «7, 4, 2, 1» является код «5, 4, 2, 1» (табл. 3). Десятичные числа, записанные в этом коде, можно рассматривать как двоично-пятеричные с кодированным представлением цифр. Три младших двоич- ных разряда в каждой тетраде изображают один пятеричный разряд, а старшая двоичная цифра соответствует двоичному разряду. Этот код имеет ряд досто­инств при выполнении арифметических операций и переводе чисел из одной системы счисления в другую.

Особенностью взвешенных ДДК, имеющих только положитель­ные веса, кроме кодов «8, 4, 2, 1», является отсутствие однозначного представления десятич- ных цифр. Любой двоичный код здесь соот­ветствует одной десятичной цифре, но десятичная цифра может быть представлена несколькими двоичными кодами. Например, в коде «2, 4, 2, 1» цифра 2 может быть представлена как 1000 или как 0010. Причиной тому служит неоднозначность решения уравнений (3) отно-сительнопеременных xh, xh -1 ,..., х 1. Для выполнения условия единственности кодирования уславливаются считать «запрещен­ными» некоторые, хотя и правиль- ные, двоичные коды десятичных цифр. Однозначностьпредставления десятичныхцифр, состоящая в том, что каждой такой цифре соответствует только одна из шест­надцати возможных комбинаций двоичных цифр, обеспечивается в коде «8, 4, 2, 1». Кроме того, требование однозначности представле­ния десятичных цифр мо- жет быть вы­полнено введением отрицательных ве­сов. В табл. 4 представлены все группы кодов, удовлетворяющие тре­бованию однозначности.

Таблица 4

№ п/п Веса разрядов № п/п Веса разрядов
  8 4 2 1   8 5 –4 2
  8 4 2-1   8 –5 4 2
  8 4 –2 1   8 5 –4 -2
  8 –4 2 1   8 6 –4 1
  8 –4 –2 1   8 –6 4 1
  8 –4 2 -1   8 6 –4 -1
  8 4 –3 2   8 –6 4 3
  8 4 3 -2   8 7 –4 -2
  8 –4 3 2   7 6 –5 3
  8 4 –3 -2   7 –6 5 3
  8 –4 3 -2   -7 6 5 3

 

Для представления десятичных цифр могут быть использованы и не­взве- шенные ДДК. Код «с избытком 3» (табл. 3) обладает свойством допол­нительнос- ти. Этот код удобен для вы­полнения операции алгебраического сложения. Для за- писи десятичных цифр в коде «с избытком 3» необходи­мо каждую двоичную тет- раду этой цифры в коде «8, 4, 2, 1» сложить с дво­ичным кодом цифры 3.

Код «8, 4, 2, 1» и коды с избытком (построенные по аналогии с кодом «с избытком 3») обладают свойством аддитивности, которое заключается в том, что код суммы двух десятичных цифр равен двоичной сумме кодов этих цифр или отличается от нее на неко­торую константу. Это свойство позво­ляет свести операции десятичной арифметики в таких кодах к выполнению операций по пра- вилам дво­ичной арифметики.

Примерами ДДК, в которых каждая десятичная цифра кодиру­ется пятью двоичными разрядами, являются коды «3 а + 2» и «2 из 5» (табл. 3). Первый код обладает свойством дополнительности и может быть получен путем записи в дво-ичной системе с естествен­ным порядком весов числа 3 а + 2, где а – заданная десятичная цифра. В коде «2 из 5» каждая десятичная цифра изображается пя­тью двоичными разрядами, из которых только два содержат едини­цы. Можно считать, что код «2 из 5» получается из кода «7, 4, 2, 1» путем добавления справа дополнительного разряда с весом 0. В этот разряд записывается такая двоичная цифра, чтобы общее чис­ло единиц было равно двум (за исключением кода деся- тичного ну­ля). Коды «3 а + 2» и «2 из 5» используются для передачи информации, так как они позволяют обнаруживать наиболее вероятные ошибки.

В ВТ находит применение также двоично-пятеричная система счисления. В такой системе основание нечетных разрядов в записи числа равно 5, а основа- ние четных разрядов равно 2. Очевидно, что такую систему можно рассматри- вать как десятичную, цифры ко­торой кодируются одной пятеричной и одной двоичной цифрами. Двоичная цифра (0 или 1) показывает, сколько пятерок вхо- дит в данную десятичную цифру, а пятеричная цифра (0, 1, 2, 3, 4) дает допол- нительное количество единиц. Например, десятичное число 791, 127 может быть записано в двоично-пятеричной системе с не­посредственным представлением цифр в виде 12 14 01, 01 02 12.

В коде «2 из 7», который также называют двоично-пятеричным кодом, для представления десятичной цифры используется семь двоичных разрядов. Десятич- ные числа, записанные в этом коде, можно рассматривать как числа, представлен- ные в смешанной дво­ично-пятеричной системе счисления с кодированным пред-ставлением цифр. Пятеричные цифры кодируются пятью младшими разрядами, а двоичные – двумя старшими, причем в каждой группе разрядов должна быть запи- сана только одна единица. Этот код можно рас­сматривать как взвешенный код «5043210». Код «2 из 7» также, как и коды « 3 а + 2» и «2 из 5», позволяет обна- руживать наиболее вероят­ные ошибки при передаче информации. Кроме того, ко- ды «2 из 5» и «2 из 7» обеспечивают в ЭВМ с импульсным представлением ин­формации постоянное и при этом минимальное потребление тока, так как любая десятичная цифра в этих кодах представляется ком­бинацией разрядов, содержа- щей только две единицы.

Представленный в табл. 3 рефлексный код обладает тем свой­ством, что двум соседним десятичным цифрам соответствуют кодовые комбинации, отличаю-щиеся друг от друга. только в одном двоичном разряде. Это свойство эффективно используется при преобразова­нии величины углового и линейного перемещения в цифровой экви­валент. Код, обозначенный в табл. 3 как «w, x, у, r», обладает сле-дующим свойством. Для любой десятичной цифры комбинация z, w, х, у дает млад- ший разряд произведения этой цифры на 3, ком­бинация х, у, г, w – младший разряд произведения цифры на 7, а комбинация у, г, w, x – младший разряд произведения на 9. Та­ким образом, младший разряд произведения десятичной цифры на 3, 7 и 9 может быть получен круговой перестановкой двоичных цифр.

Из числа других двоично-кодированных систем в ВТ нашли применение системы с основанием k = 2 r, в частности восьмерич­ная и шестнадцатиричная. Эти системы используются при составлении программ для более короткой и удобной записи двоичных представ­лений команд, так как в этом случае нет необходимос- ти выполнять специальные операции для перевода чисел в двоичную систему. В табл. 5 приведены изображения некоторых целых и дробных чисел в позицион- ных системах с основаниями k = 2, 8, 10, 16. Здесь шесть старших цифр шест- надцатиричной системы обозначены буквами А, В, С, D, Е, F (соответствуют десятичным числам 10, 11, 12, 13, 14, 15).

Таблица 5.

k k
               
        0,1 0,0001… 0,06… 0,19…
        0,2 0,0011… 0,14… 0,33…
        0,3 0,0100… 0,23… 0,4C…
        0,4 0,0110… 0,31… 0,66…
        0,5 0,1000 0,4 0,8
        0,6 0,1001… 0,46… 0,99…
        0,7 0,1011… 0,54… 0,B3…
        0,8 0,1101… 0,63… 0,CC…
        0,9 0,1110… 0,71… 0,E6…
               
      A        
      B        
      C        
      D        
      E        
      F        
               
               
               
               
               

В современных ЭВМ, обрабатывающих не только числовую ин­формацию, но и текстовую (алфавитно-цифровую), отдельные сим­волы чаще всего представ- ляют словами длиной в один байт. Так как один байт равен двум двоичным тетра- дам, то в ЭВМ с байтовым пред­ставлением информации можно записывать две десятичные цифры в один байт. Вместе с тем можно записывать в каждый байт и по одной десятичной цифре, используя остальные четыре разряда бай­та для за- писи знаков и вспомогательных символов. Например, в ЭВМ Единой Системы (ЕС ЭВМ) реализованы обе возможности, причем первая используется для обра- ботки числовой десятичной информации, а вторая – для обработки текстовой ин-формации.

В специализированных цифровых устройствах находят приме­нение системы счисления с иррациональным основанием, к которым относятся так называемые Р -коды Фибоначчи и коды «золотой» Р -пропорции. При этом Р -кодом Фибоначчи называется представле­ние числа X в виде


где {0, 1} — двоичная цифра в i -м разряде, — вес i -ro разряда, опре-деляемый как

Если Р = 0, то Р -код Фибоначчи совпадает с представлением чисел в дво- ичной канонической системе счисления. В случае Р = 1 код Фибоначчи соответ- ствует системе счисления с искусственным порядком весов, а именно: 1, 1, 2, 3, 5, 8, 13, 21, 34,... В этой последова­тельности любой вес равен сумме двух соседних младших весов. Если Р = 2, то последовательность весов Р -кода Фибоначчи име- ет вид 1, 1, 1, 2, 3, 4, 6, 9, 13, 19, 28,.... При подобная последова­- тельность состоит из Р единиц, после которых следует натуральный ряд чисел. Как и в других системах с искусственным порядком ве­сов, представление чисел в Р -кодах Фибоначчи не является однозначным. К числу основных достоинств кодов Фибоначчи следует отнести повышение быстродействия устройств обработки ин-форма­ции и удобство организации контроля правильности их функциони­рования.

Кодом «золотой» Р -пропорции называется представление числа X в виде

где xi — двоичная цифра в i -м разряде, — вес i- го разряда, причем = + .

Приведенное представление задает бесконечное число способов нумерации действительных чисел, так как каждому Р соответствует свой способ нумерации. Веса разрядов в таком представлении свя­заны с весами разрядов в Р -кодах Фибо- наччи следующим соотношением:

Отсюда при Р = 0 следует (0) = 2, т. е. код «золотой» Р -пропорции в этом случае соответствует двоичной позиционной системе счисления. При Р > 0 значение (Р) является иррациональным числом. В частности, для Р = 1

Подобно Р -кодам Фибоначчи особенностью кодов «золотой» Р -пропорции является неоднозначность представления действитель­ных чисел (за исключением нуля). Кроме того, при Р > 0 понятия целого и дробного числа не совпадают с общепринятыми понятиями. Например, целое число 3 в коде «золотой» 1-пропор- ции изображает­ся как 100,01, а иррациональное число при любом Р > 0 изображается как и основание системы счисления в канонической двоичной сис- теме, т. е. = 10.

Число было известно еще древним грекам из реше- ния задачи о делении отрезка в сред­нем и крайнем отношениях. В средние века такое пропорциональное отношение было названо «золотым». Этим и объясняется происхож­дение названия кодов «золотой» Р -пропорции.

 

 



<== предыдущая лекция | следующая лекция ==>
ЗАКЛЮЧЕНИЕ. (продолжительность – 5 минут) | Методы перевода чисел из одной системы счисления в другую
Поделиться с друзьями:


Дата добавления: 2015-09-20; Мы поможем в написании ваших работ!; просмотров: 2427 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Слабые люди всю жизнь стараются быть не хуже других. Сильным во что бы то ни стало нужно стать лучше всех. © Борис Акунин
==> читать все изречения...

2210 - | 2135 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.013 с.