- •Часть I Информация, системы счисления, основы логики, информационные модели
- •1. Измерение и кодирование информации
- •Часть I. Информация, системы счисления, основы логики, информационные модели 9
- •Кодирование информации
- •Часть I. Информация, системы счисления, основы логики, информационные модели 11
- •Часть I. Информация, системы счисления, основы логики, информационные модели 13
- •Часть I. Информация, системы счисления, основы логики, информационные модели 15
- •Часть I. Информация, системы счисления, основы логики, информационные модели 17
- •Часть I. Информация, системы счисления, основы логики, информационные модели 19
- •Часть I. Информация, системы счисления, основы логики, информационные модели 21
- •Часть I. Информация, системы счисления, основы логики, информационные модели 23
- •Часть I. Информация, системы счисления, основы логики, информационные модели 25
- •2. Системы счисления
- •Часть I. Информация, системы счисления, основы логики, информационные модели 27
- •Часть I. Информация, системы счисления, основы логики, информационные модели 29
- •Часть I. Информация, системы счисления, основы логики, информационные модели 31
- •Часть I. Информация, системы счисления, основы логики, информационные модели 33
- •2. Мпформшнка. Нолитшки к 1-х')
- •Часть I. Информация, системы счисления, основы логики, информационные модели 35
- •Часть I. Информация, системы счисления, основы логики, информационные модели 37
- •Часть I. Информация, системы счисления, основы логики, информационные модели 39
- •Часть I. Информация, системы счисления, основы логики, информационные модели 41
- •3. Кодирование последовательностей и их анализ
- •Часть I. Информация, системы счисления, основы логики, информационные модели 43
- •Часть I. Информация, системы счисления, основы логики, информационные модели 45
- •Часть I. Информация, системы счисления, основы логики, информационные модели 47
- •Часть I. Информация, системы счисления, основы логики, информационные модели 49
- •4. Основы логики Справочные сведения
Кодирование информации
В устройствах, предназначенных для хранения или передачи информации, необходимо предварительно выполнять ее кодирование, т. е. перевод в форму, естественную для данного устройства. Например, устройство, которое выводит информацию о том, какой стороной выпала брошенная монета, может состоять из одной лампочки, если договориться о том, что включенная лампочка означает «выпал орел», а выключенная — «выпала решка». Таким образом, включенная или выключенная лампочка «кодирует» информацию о результате бросания монеты. Обратите внимание на то, что элемент устройства, принимающий два состояния (включено/выключено), позволяет закодировать информацию объемом 1 бит.
Если требуется закодировать информацию большего объема, то в устройство надо включить больше элементов. Например, для вывода информации объемом 2 бита достаточно использовать устройство с двумя лампочками. Мы уже отмечали, что информация объемом 2 бита позволяет выбрать одно из 4-х равновозможных значений. Если обозначить включенную лампочку буквой В («включено»), а выключенную — буквой О («отключено»), то можно закодировать эти значения так: значение 1 — обе лампочки включены (ВВ), значение 2 — первая лампочка включена, а вторая — выключена (ВО), значение 3 — первая выключена, а вторая включена (ОВ), значение 4 — обе лампочки выключены (ОО).
Итак, с помощью двух элементов, принимающих два состояния (включено — выключено), можно закодировать 4 различных значения. Эти значения называются кодируемыми символами, а множество символов — алфавитом. Количество символов, входящих в алфавит, называется его мощностью. Понятно, что для кодирования символов алфавита мощностью 8 потребуется три элемента, принимающих два состояния, для алфавита мощностью 16 — четыре элемента и т. д. Во всех этих случаях оказывается справедливой формула N = log2 M, где М — мощность алфавита, а N — количество используемых для его кодирования элементов, принимающих два состояния.
Часть I. Информация, системы счисления, основы логики, информационные модели 11
Однако возникает вопрос: как быть с алфавитами, мощность которых не является степенью числа 2? Ведь в этом случае формула будет давать дробное значение, не имеющее смысла (устройство не может содержать две с половиной лампочки!). В подобных ситуациях значение логарифма надо округлять с избытком, т. е. в сторону большего целого числа. Действительно, для кодирования трех состояний надо использовать не менее двух лампочек (хотя в этом случае одна из четырех возможных комбинаций использоваться не будет). Аналогично, для кодирования алфавита, мощность которого лежит в диапазоне от 5 до 8, потребуется три лампочки. Если договориться обозначать через \а\ значение числа а, округленное с избытком, то общая формула, позволяющая определить количество элементов с двумя состояниями, необходимое для кодирования алфавита мощностью М, примет вид:
W = |log2Ml.
Она отличается от формулы вычисления объема информации р (формулы Хартли) только наличием дополнительной операции округления. Величину N можно также определить из следующего двойного неравенства:
2"'1<М<2".
Эти формулы можно обобщить, рассмотрев устройства, элементы которых принимают не два, а большее число состояний. Например, можно рассмотреть устройство с одной лампочкой, которая может быть выключена, постоянно гореть или мигать. С помощью такого элемента с тремя состояниями можно закодировать алфавит из 3-х символов. Если же использовать 2 лампочки с тремя состояниями, то мощность алфавита можно увеличить до 9 (обозначив мигающую лампочку через М, символы алфавита можно закодировать, например, так: 1 — ВВ, 2 — ВМ, 3 — ВО, 4 — MB, 5 — ММ, 6 — МО, 7 — ОВ, 8 — ОМ, 9 — 00). Для 27 символов достаточно использовать 3 лампочки с тремя состояниями, для 81 символа—4 лампочки и т. д. Точнее, 4 элемента с тремя состояниями достаточны для кодирования символов алфавита, мощность которого лежит в диапазоне от 28 до 81. Таким образом, если используются элементы с тремя состояниями, то формула, позволяющая определить число таких устройств для кодирования алфавита мощностью М, примет вид:
W = riog3A/|.
От ранее приведенной формулы она отличается основанием логарифма (вместо числа 2 используется 3). В общем случае, когда устрой-
12
Информатика
ство состоит из элементов, принимающих L состояний, формула будет следующей:
N=[\ogLM\
Вместо данной формулы для нахождения N можно использовать двойное неравенство:
LN'<M<LN.
Хранение информации в компьютере. Дополнительные единицы информации
Для хранения информации в компьютере используются устройства, элементы которых (ячейки памяти) могут принимать два состояния: активное и неактивное. Удобно считать, что в случае активного состояния ячейка памяти содержит значение 1, а в случае неактивного — значение 0. Таким образом, каждая ячейка памяти может содержать информацию объемом 1 бит.
Если объединить в один набор 8 ячеек памяти, то в этом наборе можно записать информацию объемом 8 бит. Такой объем информации, согласно формуле Хартли, достаточен для выбора одного из 256 различных элементов (поскольку 256 = 28). Объем информации, равный 8 битам, настолько часто используется в информатике, что для него введена дополнительная единица информации байт:
1 байт = 8 бит = 23 бит.
Для измерения больших объёмов информации используются величины, кратные 1024 байт:
1 Кбайт (килобайт) = 2ю байт = 1024 байт
1 Мбайт (мегабайт) = 210 Кбайт = 1024 Кбайт
1 Гбайт (гигабайт) = 210 Мбайт = 1024 Мбайт
1 Тбайт (терабайт) = 210 Гбайт = 1024 Гбайт
Разумеется, любую из указанных величин можно выразить в битах, например, 1 Мбайт = 210 Кбайт = 2Ш -210 байт = 2ю -210 -23 бит = 223 бит.
Кодирование текстовой информации в компьютере
Для того чтобы в компьютере можно было хранить текстовые данные, необходимо предварительно закодировать все символы, которые могут использоваться в тексте. Текст может содержать цифры, прописные и строчные буквы, пробелы, знаки препинания и специальные символы (например, +, =, *, $), поэтому необходимо, чтобы мощность алфавита, включающего все кодируемые символы, была достаточно
