Наш дом

Официальный сайт школы №14 г. Апатиты Мурманской области
Адрес: 184207 Мурманская обл., г. Апатиты, ул. Бредова, дом 2а.
Тел. +7 (815 55) 2-25-58, +7 (815 55) 2-79-46
Факс 8155520710 E-mail: school14-apatity @ bk. Ru

Тема 1. Информация и ее кодирование

Единицы измерения и методы измерения количества информации. Скорость передачи информации

Напомним основные положения алфавитного подхода к измерению количества информации.

Пример:

В зрительном зале две прямоугольные области зрительских кресел: одна 10 на 5, а другая 4 на 8. Какое минимальное количество бит потребуется для кодирования каждого места в автоматизированной системе?

Решение:

p1

Ответ: 7 бит.

Пример:

В велокроссе участвуют 230 спортсменов. Специальное устройство регистрирует прохождение каждым из участников промежуточного финиша, записывая его номер с использованием минимально возможного количества бит, одинакового для каждого спортсмена. Каков информационный объем сообщения, записанного устройством, после того как промежуточный финиш прошли 20 велосипедистов?

Решение:

p2  - это минимальное количество бит для записи номера спортсмена.

Поскольку была записана информация о 20 спортсменах, объем записанного сообщения составил 20x8 = 160 бит.

Ответ: 160 бит.

Пример:

Сколько существует различных последовательностей из символов «+» и «-», длиной ровно в шесть символов?

Решение:

В данном случае алфавит состоит из двух элементов, потому информационный объем одного символа - 1 бит. 6 бит позволяют закодировать множество из p3  элементов.

Ответ: 64.

При решении этого примера возможен также комбинаторный подход.

Пример:

Световое табло состоит из лампочек. Каждая лампочка может находиться в одном из трех состояний («включено», «выключено» или «мигает»). Какое наименьшее количество лампочек должно находиться на табло, чтобы с его помощью можно было передать 18 различных сигналов?

Решение:

С помощью n лампочек, каждая из которых может находиться в трех состояниях, можно закодировать <?xml version= сигналов. <?xml version=, поэтому двух лампочек недостаточно, а трех хватит.

Ответ: 3.

Пример:

Автоматическое устройство осуществило перекодировку информационного сообщения на русском языке, первоначально записанного в 16-битном коде Unicode, в 8-битную кодировку КОИ-8. При этом информационное сообщение уменьшилось на 480 бит. Какова длина сообщения в символах?

Решение:

После перекодировки из 16-битного кода в 8-битный каждый символ сообщения стал занимать на 8 бит меньше, а все сообщение уменьшилось на 480 бит, следовательно сообщение состояло из 480:8 = 60 символов.

Представление числовой информации. Системы счисления.

При записи чисел в позиционной системе счисления, оно обозначается с помощью ряда цифр. «Вклад» каждой цифры в число определяется местом, где она находится, и равен значению цифры, умноженному на основание системы счисления в степени, равной номеру цифры (нумерация ведется справа и начинается с нуля). Пусть <?xml version= - запись числа А, <?xml version= - цифры, р - основание системы счисления, тогда

<?xml version= 

Так, в числе <?xml version= цифра 1 обозначает одну тысячу (третья степень), 9 - девять сотен (вторая степень), 8 - восемь десятков (первая степень) и 7 - семь единиц (нулевая степень). Т.е. <?xml version=. Аналогично, число <?xml version=.

Пример:

В системе счисления с некоторым основанием число 12 записывается в виде 110. Укажите это основание.

Решение:

Обозначим искомое основание n. Исходя из правил записи чисел в позиционных системах счисления <?xml version=. Составим уравнение: <?xml version= и найдем натуральный корень (3). Второй, отрицательный, корень (-4) квадратного уравнения нам не подходит, так как основание системы счисления, по определению, натуральное число большее единицы. Полученный ответ проверим подстановкой: 9 + 3 + 0 = 12.

Существует еще другой вариант решения, основанный на простом подборе. Пусть наше число имеет основание n, тогда оно записывается в виде <?xml version=. Будем подставлять в качестве основания различные натуральные числа, начиная с 2. При n = 2 получим <?xml version=, при n = 3 получим <?xml version=, то есть искомое решение. Ясно, что при n> 3 мы будем получать большие числа, например, при n = 4 получим <?xml version=.

Ответ: 3.

Пример:

Укажите через запятую в порядке возрастания все основания систем счисления, в которых запись числа 17 оканчивается на 2.

Решение:

Последняя цифра в записи числа представляет собой остаток от деления числа на основание системы счисления. 17 - 2 = 15. Найдем делители числа 15, это числа 3, 5, 15. Проверим свой ответ тем, что запишем число 17 в указанных системах счисления.

<?xml version=.

Ответ: 3, 5, 15.

Для перевода чисел из двоичной системы в десятичную, и обратно, полезно выучить наизусть таблицу первых десяти степеней двойки:

n

0

1

2

3

4

5

6

7

8

9

10

2n

1

2

4

8

16

32

54

128

256

512

1024

Переведем число 10101010 из двоичной системы счисления в десятичную. Пронумеруем его цифры справа налево, подпишем под ненулевыми разрядами соответствующие степени двойки и просуммируем их:

1

0

1

0

1

0

1

0

7

6

5

4

3

2

1

0

128

 

32

 

8

 

2

 

<?xml version= 

Для перевода из десятичной в двоичную систему надо разложить данное число на степени двойки методом вычитания старшей степени. Например,

<?xml version= 
Выписав двоичные цифры, получаем равенство <?xml version=.

Обратите внимание, что очень важно довести выписывание степеней до самого конца, не потеряв ни одной цифры, так как количество нулей в конце числа имеет большое значение! (Действительно, каждый понимает, что числа <?xml version= (сто) и <?xml version= (десять) различаются на порядок. То же самое верно и по отношению к двоичным числам: <?xml version= (четыре) и <?xml version=(два) различаются в два раза.)

Пример:

Как представляется число <?xml version= в двоичной системе счисления?

1) 10012

2) 110012

3) 100112

4) 110102

Решение:

Разложим 25 на степени двойки, начиная со старшей (16):

<?xml version=.

Другой способ решения - методом подстановки ответов - можно применить, если вы забыли алгоритм перевода из десятичной в двоичную систему, но помните обратный:

1) <?xml version=;

2) <?xml version=;

3) <?xml version=;

4) <?xml version=.

Ответ: 2.

Арифметические операции в позиционных системах счисления производятся по единому алгоритму. Так, сложение двоичных чисел происходит по классическому алгоритму «столбиком» с переносом двойки в следующий разряд.

Покажем этот алгоритм на примере двух двоичных чисел <?xml version= и <?xml version=

Дописываемые единицы

1

1

1

 

1

1

1

 

Первое слагаемое

 

1

0

1

0

1

0

1

Второе слагаемое

 

0

1

1

0

1

1

1

Сумма

1

0

0

0

1

1

0

0

Результат сложения выглядит как <?xml version=. Проверим результат нашего сложения, для чего переведем все числа в десятичную систему: <?xml version=, что действительно представляет собой результат сложения 55 и 85.

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

10-чная

2-чная

8-чная

16-чная

0

0

0

0

1

1

1

1

2

10

2

2

3

11

3

3

4

100

4

4

5

101

5

5

6

110

6

6

7

111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

А

11

1011

13

В

12

1100

14

С

13

1101

15

D

14

1110

16

Е

15

1111

17

F

16

10000

20

10

Видно, что в двоичной системе запись чисел второй восьмерки чисел (от 8 до 15) отличается от записи первой восьмерки (от 0 до 7) наличием единицы в четвертом (справа) разряде. На этом основан алгоритм перевода двоичных чисел в восьмеричные «по триадам». Для применения этого алгоритма надо разбить двоичное число на тройки цифр (естественно, отсчитывая справа) и записать вместо каждой из троек восьмеричную цифру:

<?xml version=.

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

Убедимся в правильности алгоритма: <?xml version=; <?xml version=. Для перевода чисел из восьмеричной системы в двоичную используется обратный алгоритм: восьмеричные цифры заменяются на тройки двоичных цифр (при необходимости слева дописываются недостающие нули):

<?xml version=.

В десятичной системе это число будет записано как 213.

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

<?xml version=.

Еще раз проверим правильность вычислений: <?xml version=. Аналогично работает и обратный алгоритм: вместо шестнадцатеричных цифр подставляются четверки двоичных цифр. <?xml version=. Увидим, что результат выполнения алгоритма тот же:

<?xml version=.

Очень важно не забывать дописывать недостающие нули слева при переводе каждой цифры, чтобы получалась полноценная четверка или тройка двоичных цифр!

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

Пример: <?xml version= 

Пример:

Вычислите значение суммы в десятичной системе счисления:

<?xml version= 

1) 3010

2) 2610

3) 3610

4) 2010

Решение:

Переведем все числа в десятичную запись:

<?xml version=.

Ответ: 2.

Пример:

Вычислите сумму чисел х и у, если

х = <?xml version=;

у = <?xml version=

Результат представьте в виде восьмеричного числа.

1) 21108

2) 2988

3) 3208

4) 3188

Решение:

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

<?xml version=.

Второй способ состоит в том, чтобы сначала перевести числа в восьмеричную систему, а потом сложить их:

<?xml version=;

<?xml version=.

Теперь столбиком сложим восьмеричные числа 1658 + 1338:

Дописываемые единицы

1

1

 

Первое слагаемое

1

6

5

Второе слагаемое

1

3

3

Сумма

3

2

0

Обратите внимание, что во втором столбике 6 + 3 + 1 дает десять, что записывается как <?xml version=, двойка записывается на свое место, а единица подписывается сверху.

Кстати, среди приведенных вариантов ответа два (вар. 2 и 4) содержат недопустимые в восьмеричной системе цифры 8 и 9.

Ответ: 3.

Пример.

Для кодирования букв А, Б, В, Г решили использовать двухразрядные последовательные двоичные числа (от 00 до 11, соответственно). Если таким способом закодировать последовательность символов БАВГ и записать результат шестнадцатеричным кодом, то получится

1) 4В

2) 411

3) BACD

4) 1023

Решение:

По условию А кодируется как 00, Б - 01, В- 10, Г - 11, поэтому БАВГ будет закодировано как <?xml version= , что соответствует <?xml version= .