Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебник Информатика.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
17 Мб
Скачать
☆

Сложение по модулю

Важной операцией в информатике является сложение по модулю. Это операция арифметического сложения, при котором единица переноса в старший разряд, если таковая образуется при поразрядном сложении, отбрасывается. Обычно при выполнении этой операции конкретизируют, о каком модуле идет речь, например, по модулю 10, или по модулю 2, или по модулю 16. Обозначается эта операция ⊕.

Таблица сложения двоичных чисел по модулю 2 приведена ниже (обозначения строк и столбцов соответствуют слагаемым):

0

1

0

0

1

1

1

0

Пример 7. Сложить по модулю 2 двоичные числа 10 и 11.

Сложение выполним поразрядно:

1) разряд единиц: 0⊕1 = 1;

2) разряд десятков: 1⊕1 = 0.

Таким образом, 102⊕112 = 012. Чтобы  подчеркнуть, что в сложении участвовали двухразрядные слагаемые, в результате оставляются обе цифры.

Таблица сложения десятичных чисел по модулю 10 приведена ниже (обозначения строк и столбцов соответствуют слагаемым):

0

1

2

3

4

5

6

7

8

9

0

0

1

2

3

4

5

6

7

8

9

1

1

2

3

4

5

6

7

8

9

0

2

2

3

4

5

6

7

8

9

0

1

3

3

4

5

6

7

8

9

0

1

2

4

4

5

6

7

8

9

0

1

2

3

5

5

6

7

8

9

0

1

2

3

4

6

6

7

8

9

0

1

2

3

4

5

7

7

8

9

0

1

2

3

4

5

6

8

8

9

0

1

2

3

4

5

6

7

9

9

0

1

2

3

4

5

6

7

8

Пример 8. Сложить  по модулю 10 десятичные числа 59 и 152.

Сложение выполним поразрядно:

1) разряд единиц: 9⊕2 = 1;

2) разряд десятков: 5⊕5 = 0;

3) разряд сотен: 0⊕1 = 1.

Таким образом, 59⊕152 =101.

Кодирование сигнала

Кодирование сигнала – это его представление в определенной форме, удобной или пригодной для последующего использования сигнала. Говоря строже, это правило, описывающее отображение одного набора знаков в другой набор знаков. Тогда отображаемый набор знаков называется исходным алфавитом, а набор знаков, который используется для  отображения, - кодовым алфавитом, или алфавитом для кодирования. При этом кодированию подлежат как отдельные символы исходного алфавита, так и их комбинации. Аналогично для построения кода используются как отдельные символы кодового алфавита, так и их комбинации. Например, дана таблица соответствия между натуральными числами трех систем счисления, аналогичная рассмотренной ранее. Эту таблицу можно рассматривать как некоторое правило, описывающее отображение набора знаков десятичной системы счисления в двоичную и шестнадцатеричную. Тогда исходный алфавит - десятичные цифры от 0 до 9, а кодовые алфавиты - это 0 и 1 для двоичной системы; цифры от 0 до 9 и символы {A, B, C, D, E, F} - для шестнадцатеричной.

Кодовой комбинацией, или, короче, кодом называется совокупность символов кодового алфавита, применяемых для кодирования одного символа (или одной комбинации символов) исходного алфавита. При этом кодовая комбинация может содержать один символ кодового алфавита. Исходным символом называется символ (или комбинация символов) исходного алфавита, которому соответствует кодовая комбинация. Например, поскольку 8 = 10002 и 8 является исходным символом, 1000 - это кодовая комбинация, или код, для числа 8. В то же время 8 - это исходный символ. Совокупность кодовых комбинаций называется кодом. Взаимосвязь символов (или комбинаций символов, если кодируются не отдельные символы) исходного алфавита с их кодовыми комбинациями составляет таблицу соответствия (или таблицу кодов).

Следует отметить, что понятие “код” омонимично: оно может употребляться и в смысле кодовой комбинации, и в приведенном выше смысле. Аналогично, понятие “кодовая комбинация” синонимично понятию “код”.

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

В зависимости от целей кодирования, различают следующие его виды:

  1. кодирование по образцу - используется всякий раз при вводе информации в компьютер для ее внутреннего представления;

  1. криптографическое кодирование, или шифрование, – используется, когда нужно защитить информацию от несанкционированного доступа;

  1. эффективное, или оптимальное, кодирование – используется для устранения избыточности информации, т.е. снижения ее объема, например, в архиваторах;

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

Коды по образцу

Данный вид кодирования применяется для представления дискретного сигнала на том или ином машинном носителе.

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

Рассмотрим виды таких кодов: прямые;  ASCII-коды; коды Грея; коды, учитывающие частоту символов; код Штибица .

Прямые коды

Применяются для представления в ЭВМ числовых данных и используют двоичную систему счисления.

Примером прямого кода для семнадцати натуральных десятичных чисел является соответствующий фрагмент таблицы. Эти коды имеют переменную длину, что неудобно для их обработки. Для получения кодов постоянной длины кодовые комбинации дополняются незначащими нулями. Тогда получим прямые коды постоянной длины для семнадцати первых натуральных десятичных чисел. Они показаны в таблице:

Числа

Прямые коды

0

00000

1

00001

2

00010

3

00011

4

00100

5

00101

6

00110

7

00111

8

01000

9

01001

10

01010

11

01011

12

01100

13

01101

14

01110

15

01111

16

10000

Прямые коды могут использоваться для кодирования и нечисловых данных.

Пример 1. Построить двоичные коды для символов a, b, c, d.

Пронумеруем исходные символы, начиная с нуля, и по таблице сформируем двоичные коды для номеров символов. Тогда двоичные коды исходных символов примут вид:

Исходные символы

Номер

Двоичные коды

a

0

0

b

1

1

c

2

10

d

3

11

Для получения двоичного кода постоянной длины добавим незначащие нули к кодовым комбинациям для a и b. Получим:

Исходные символы

Двоичные коды

a

00

b

01

c

10

d

11

    

Пример 2. С помощью полученной таблицы закодировать сообщение (дискретный сигнал) "abba".

Результат: abba = 00010100.