домашняя библиотека
Поиск в библиотеке
Навигация по предметам
Последние добавленные новости
Реклама

Дискретная математикаДискретная математика – пособие (Часть 3 из 5). Кодирование сигналов

2.2. Равномерные простые и составные цифровые коды

Наиболее распространенным при цифровом кодировании является использование позиционных систем счисления. При этом любое m-разрядное число N с основанием системы счисления B может быть представлено в виде суммы (1.1).

Кодовые комбинации, соответствующие простому цифровому коду, содержат количество элементов, соответствующее числу разрядов числа N. Каждый элемент кодовой комбинации может принимать B различных значений.

Например, четырехразрядное десятичное число 4752 может быть представлено в виде суммы

4752 = 4×103 + 7×102 + 5×101 +2×100.

Максимально возможное число кодовых комбинаций определяется выражением

Nmax = Bm. (2.1)

Как уже отмечалось, на практике наиболее широко используются двоичные коды, т.е. коды, базирующиеся на двоичной системе счисления, для которой разрядные коэффициенты могут принимать значения 0 и 1. Максимально возможное число кодовых комбинаций простого двоичного кода определяется выражением

Nmax = 2m. (2.2)

Двоичный код, широко используемый при передаче, хранении и обработке информации, неудобен, однако, при вводе и выводе информации, так как оператору трудно оперировать с непривычными двоичными числами. Кроме того, запись чисел в двоичной системе счисления громоздкая. Поэтому помимо двоичной получили распространение системы (как уже отмечалось в главе 1) с основанием, равным целой степени двойки (восьмеричная, шестнадцатеричная), которые с одной стороны, легко сводятся как к двоичной, так и к десятичной, а с другой – дают более компактную запись.

Составные коды базируются на составных системах счисления, имеющих два и более оснований. При таком кодировании числа, заданные в системе с некоторым основанием q, изображаются с помощью цифр другой системы счисления с основанием p < q.

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

В двоично-десятичном коде основной системой счисления является десятичная. Однако каждая цифра десятичного числа записывается в виде четырехразрядного двоичного числа (тетрады). Для фиксации цифр десятичного числа наибольшее практическое применение нашли четырехэлементные двоичные весовые коды 8 – 4 – 2 – 1; 7 – 4 – 2 – 1; 5 – 1 – 2 – 1 и 2 – 4 – 2 – 1. Цифры в названии кода выражают веса единиц в соответствующих двоичных разрядах.

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

Таблица 2.1

 

Десятичная цифра

Код

8 – 4 – 2 – 1

Код

7 – 4 – 2 – 1

Код

5 – 1 – 2 – 1

Код

2 – 4 – 2 – 1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

 

1

0

0

0

1

0

0

0

1

0

0

0

1

0

0

0

1

 

2

0

0

1

0

0

0

1

0

0

0

1

0

0

0

1

0

 

3

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

 

4

0

1

0

0

0

1

0

0

0

1

1

1

0

1

0

0

 

5

0

1

0

1

0

1

0

1

1

0

0

0

1

0

1

1

 

6

0

1

1

0

0

1

1

0

1

0

0

1

1

1

0

0

 

7

0

1

1

1

1

0

0

0

1

0

1

0

1

1

0

1

 

8

1

0

0

0

1

0

0

1

1

0

1

1

1

1

1

0

 

9

1

0

0

1

1

0

1

0

1

1

1

1

1

1

1

1

 

С помощью четырех двоичных разрядов можно образовать 16 различных комбинаций, а т.к. используется только 10, то двоично-десятичный код обладает некоторой избыточностью.

 

2.3. Рефлексные (отраженные) коды

В простом двоичном коде при переходе от изображения одного числа к изображению соседнего старшего или соседнего младшего числа может происходить одновременное изменение цифр в нескольких разрядах. Как следует из табл. 2.2, при переходе от изображения числа 3 к изображению числа 4 в двоичном коде происходит одновременное изменение цифр в трех разрядах, а при переходе от изображения числа 7 к изображению числа 8 происходит одновременное изменение цифр в четырех разрядах.

Таблица 2.2

Десятичное

число

Двоичный

код

Код

Грея

Десятичное число

Двоичный код

Код

Грея

0

0 0 0 0

0 0 0 0

8

1 0 0 0

1 1 0 0

1

0 0 01

0 0 0 1

9

1 0 0 1

1 1 0 1

2

0 0 10

0 0 1 1

10

1 0 1 0

1 1 1 1

3

0 0 11

0 0 1 0

11

1 0 1 1

1 1 1 0

4

0 1 0 0

0 1 1 0

12

1 1 0 0

1 0 1 0

5

0 1 0 1

0 1 1 1

13

1 1 0 1

1 0 1 1

6

0 1 10

0 1 0 1

14

1 1 1 0

1 0 0 1

7

0 1 1 1

0 1 0 0

15

1 1 1 1

1 0 0 0

Это может явиться источником значительных ошибок при некоторых способах кодирования непрерывных сообщений. Например, при переходе от изображения числа 710 (01112) к изображению числа 810(10002) происходит смена цифр во всех четырех разрядах и может быть такой случай, когда вместо кода 01112 (710) или 10002 (810) будет зафиксирован код 11112, соответствующий десятичному числу 1510, т. е. будет иметь место недопустимо большая погрешность.

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

Код Грея является непозиционным кодом, т.к. вес его единицы не определяется номером разряда. В этом коде можно выделить оси симметрии (оси «отражения»), относительно которых наблюдается идентичность элементов в некоторых разрядах. Так, например, имеет место симметрия относительно оси, проведенной между числами 7 и 8. В комбинациях, симметричных относительно этой оси, идентичны три символа младших разрядов. Отмеченная особенность послужила основанием для введения термина «рефлексный код» (от английского to reflect – отражать). Вес единицы в коде Грея по абсолютной величине в k-том разряде определяется выражением

Дискретная математика – пособие (Часть 3 из 5). Кодирование сигналов

причем знак суммируемых членов положителен для всех нечетных единиц в числе, записанном в коде Грея (считать слева направо), и отрицателен для всех четных единиц. Например, значение числа 1101101, записанного в коде Грея, будет

Дискретная математика – пособие (Часть 3 из 5). Кодирование сигналов

В общем случае рефлексный код на основе двоичного кода строится по следующему правилу:

1) преобразование двоичного кода в код Грея начинается со стороны старших разрядов (слева направо);

2) старшему разряду кода Грея присваивается значение старшего разряда двоичного кода;

3) каждый последующий разряд в рефлексном коде принимает значение «, если значение соответствующего разряда в двоичном коде совпадает со значением соседнего старшего разряда, в противном случае – «1».

Например, двоичное число 100111010112 в рефлексном коде записывается в виде 11010011110. Здесь цифра старшего разряда («1») совпадает со значением старшего разряда двоичного кода. Во втором слева разряде «1», потому что в двоичной записи числа цифра второго слева разряда не совпадает с цифрой первого разряда («0» и «1»); в третьем слева разряде имеем «0», потому что в двоичной записи числа значения третьего и второго разрядов совпадают (« и «) и т.д.

Само правило построения рефлексного кода дает простой способ перевода чисел из рефлексного кода в двоичную запись: значение старшего разряда в двоичной записи числа то же, что и значение старшего разряда в рефлексном коде; значение второго слева разряда в двоичном коде совпадает с первым, если вторая цифра в рефлексном коде есть «0», и противоположно значению первого разряда, если «1», и т.д.

Например, если рефлексный код имеет вид 00110100010, то соответствующая ему двоичная запись будет иметь вид 001001111002.

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

   
 
  • Добавлен: 18-09-2010, 01:26 | Просмотров: 21520

    support: admin@sdb.su