Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическая работа № 3_2011.doc
Скачиваний:
5
Добавлен:
27.09.2019
Размер:
126.98 Кб
Скачать

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

Существует американская кодировка символов ASCII. Начиная с 1997 г. последние версии Microsoft Windows&Office поддерживают новую кодировку Unicode, которая на каждый символ отводит по 2 байта, а, поэтому по формуле (1.1) получаем: N = 2I = 216 = 65536, т.е. можно закодировать не 256 символов, а 65536 различных символов.

Чтобы определить числовой код символа можно или воспользоваться кодовой таблицей, или, работая в текстовом редакторе Word 6.0 / 95. Для этого в меню нужно выбрать пункт "Вставка" - "Символ", после чего на экране появляется диалоговая панель Символ. В диалоговом окне появляется таблица символов для выбранного шрифта. Символы в этой таблице располагаются построчно, последовательно слева направо, начиная с символа Пробел (левый верхний угол) и, кончая, буквой "я" (правый нижний угол).

Для определения числового кода символа в кодировке Windows (СР1251) нужно при помощи мыши или клавиш управления курсором выбрать нужный символ, затем щелкнуть по кнопке Клавиша. После этого на экране появляется диалоговая панель Настройка, в которой в нижнем левом углу содержится десятичный числовой код выбранного символа.

В информатике часто используется величина, называемая байтом (byte) и равная 8 битам. И если бит позволяет выбрать один вариант из двух возможных, то байт, соответственно, 1 из 256 (28). В большинстве современных ЭВМ при кодировании каждому символу соответствует своя последовательность из восьми нулей и единиц, т. е. байт. Соответствие байтов и символов задается с помощью таблицы, в которой для каждого кода указывается свой символ. Так, например, в широко распространенной кодировке Koi8-R буква "М" имеет код 11101101, буква "И" - код 11101001, а пробел - код 00100000.

Наряду с байтами для измерения количества информации используются более крупные единицы: 1 Кбайт (один килобайт) = 210 байт = 1024 байта

1 Мбайт (один мегабайт) = 210 Кбайт = 1024 Кбайта = 220 байта

1 Гбайт (один гигабайт) = 210 Мбайт = 1024 Мбайта = 230 байта

В последнее время в связи с увеличением объёмов обрабатываемой информации входят в употребление такие производные единицы, как:

1 Тбайт (один терабайт) = 210 Гбайт = 1024 Гбайта = 240 байта

1 Пбайт (один петабайт) = 210 Тбайт = 1024 Тбайта = 250 байта

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

Пусть в некотором сообщении содержатся сведения о том, что произошло одно из N равновероятных событий. Тогда количество информации I, заключенное в этом сообщении, и число событий N связаны формулой: 2I = N (формула 1.1). Решение такого уравнения с неизвестной I имеет вид: I = log2N (формула 1.2). То есть именно такое количество информации необходимо для устранения неопределенности из N равнозначных вариантов. Эта формула носит название формулы Хартли. Получена она в 1928 г. американским инженером Р. Хартли. Процесс получения информации он формулировал примерно так: если в заданном множестве, содержащем N равнозначных элементов, выделен некоторый элемент I, о котором известно лишь, что он принадлежит этому множеству, то, чтобы найти I, необходимо получить количество информации, равное log2N.

Если N равно целой степени двойки (2, 4, 8, 16 и т.д.), то вычисления легко произвести "в уме". В противном случае количество информации становится нецелой величиной, и для решения задачи придется воспользоваться таблицей логарифмов либо определять значение логарифма приблизительно (ближайшее целое число, большее).

При алфавитном подходе, если допустить, что все символы алфавита встречаются в тексте с одинаковой частотой (равновероятно), то количество информации, которое несет каждый символ (информационный вес одного символа), вычисляется по формуле: I=log2N, где N - мощность алфавита (полное количество символов, составляющих алфавит выбранного кодирования). В алфавите, который состоит из двух символов (двоичное кодирование), каждый символ несет 1 бит (21) информации; из четырех символов - каждый символ несет 2 бита информации(22); из восьми символов - 3 бита (23) и т.д. Один символ из алфавита мощностью 256 (28) несет в тексте 8 битов информации. Как мы уже выяснили, такое количество информации называется байт. Алфавит из 256 символов используется для представления текстов в компьютере. Один байт информации можно передать с помощью одного символа кодировки ASCII.

Если весь текст состоит из N символов, то при алфавитном подходе размер содержащейся в нем информации I определяется по формуле: I=N*a (формула 1.3), где a - информационный вес одного символа в используемом алфавите.

Сегодня очень многие люди для подготовки писем, документов, статей, книг и пр. используют компьютерные текстовые редакторы. Компьютерные редакторы, в основном, работают с алфавитом размером 256 символов. В этом случае легко подсчитать объем информации в тексте. Если 1 символ алфавита несет 1 байт информации, то надо просто сосчитать количество символов; полученное число даст информационный объем текста в байтах.

Например, книга содержит 100 страниц; на каждой странице-35 строк, в каждой строке-50 символов. Рассчитаем объем информации, содержащийся в книге.

Страница содержит 35 * 50 = 1750 символов или 1750*1 байт = 1750 байт информации. Объем всей информации в книге (в разных единицах):

1750 * 100 = 175000 байт.

175000 / 1024 = 170,8984 Кбайт.

170,8984 / 1024 = 0,166893 Мбайт.

Задачи в классе. (Решаем вместе с учителем)

Для решения задач воспользуемся программой «Калькулятор»: Пуск – Программы -Стандартные - Калькулятор - Инженерный.

Задача № 1. Два текста содержат одинаковое количество символов. Первый текст записан на русском языке, а второй на языке племени нагури, алфавит которого состоит из 16 символов. Чей текст несет большее количество информации?

Решение.

I = N * а (формула 1.3) (информационный объем текста I равен произведению числа символов N на информационный вес одного символа а).

Т.к. оба текста имеют одинаковое число символов (N), то разница зависит от информативности одного символа алфавита (а).

1. Информационный объем русского символа а1 по формуле N = 2I (формула 1.1), 32 = 2а1 = 25 , т.е. а1 = 5 бит,

2. Информационный объем символа а2 языка нагури находим по формуле N = 2I, 16 = 2а2 = 24, т.е. а2 = 4 бит,

3. Количество информации в тексте на русском языке: I1 = N * 5 бит, а на языке нагури I2 = N * 4 бит.

Значит, текст, записанный на русском языке, в 5/4 раза несет больше информации.

Задача № 2. Используется кодовая таблица СР1251 (Windows Cyrillic). Сколько килобайт будет занимать файл в простом текстовом формате (plain.txt), если в тексте 250 страниц, на странице 25 строк, а в строке в среднем 45 символов?

Решение:

1. Количество символов на 1 странице: 25 * 45 =1125

2. Общее количество символов: 1125 * 250 = 281250 символов

3. Объем файла: 281250 * 1 байт = 281250 байт

4. Переведем полученный результат килобайты: 281250 / 1024 = 274,7 Кбайт

Задача № 3. Какое количество информации несет сообщение о том, что встреча назначена на 30 января в 18.00?

Решение:

Поскольку появление в сообщении определенного числа месяца, определенного месяца и определенного часа равновероятно из общего числа дней в месяце, общего числа месяцев, общего числа часов, то количество информации определяется по формуле: N = 2I (формула 1.1) или I = log2N (формула 1.2),

где I – количество информации, N - количество возможных событий, в нашем случае:

1. N = 31 * 12 * 24 – (количество дней в месяце)*(количество месяцев)*(количество часов в сутках).

2. 2I = 31 * 12 * 24  2I = 8928  I = log28928 ≈ 13 бит. Ответ: 13 бит

Задача № 4. Вычислить с помощью калькулятора количество информации, которое будет получено при бросании симметричного шестигранного кубика.

Решение. Воспользуемся формулой (1.2). I = log2 6 = ~ 2,58 бит

Задача № 5. Сколько байт в 16 Гбайт?

Учитывая, что 1 Гбайт = 210 Мбайт, 1 Мбайт = 210 Кбайт, 1 Кбайт = 210 байт, приводим расчеты к единому основанию 2:

16 Гбайт = 24 * 210* 210 * 210 = 234 байт