Академия управления мвд россии
Вид материала | Учебник |
СодержаниеРис.2.2.1. Трансформация разных видов информационных записей в единую цифровую форму |
- Темы контрольных работ Аппараты мвд, ГУ мвд, У мвд, ут мвд россии по Федеральным округам, 48.32kb.
- Положение о Штабе Главного управления мвд россии по Ростовской области общие положения, 212.4kb.
- Методические рекомендации по подготовке рефератов сотрудниками подразделений уголовного, 335.13kb.
- Нижегородская академия, 209.52kb.
- Функция прогнозирования миграционных процессов в системе управления мвд россии, 462.3kb.
- Нижегородская академия, 238.9kb.
- Нижегородская академия, 214.37kb.
- Ения, подразделениях Государственной противопожарной службы мвд россии, Первом управлении, 1898.24kb.
- Инструкция по организации учебного процесса в центре профессиональной подготовки территориального, 515.25kb.
- Рабочая программа дисциплины методы исследований в менеджменте направление подготовки, 262.36kb.
91
информации
Очень часто на вопрос о том, что хранится в памяти компьютера, можно услышать ответ - информация. Это не совсем верно, поскольку даже если взять такую древнюю форму хранения информации, как письменный текст, то оказывается, что в одном из них может быть много полезной информации, а в другом - мало, несмотря на то, что оба текста по объему равны. То же самое касается и устной речи:
из двух высказываний одинаковой продолжительности и с абсолютно одинаковым словарным составом одно высказывание может оказаться пустым, а другое - полезным. Причем для одного слушателя одно и то же дословно совпадающее сообщение может оказаться весьма полезным, а для другого - пустым сотрясанием воздуха. На этом принципе построены некоторые криптографические методы передачи важной для принимающего информации, скрывающейся во внешне малоинформативном сообщении. Поэтому понятие информации обязательно включает в себя категорию полезности или нужности.
В энциклопедическом словаре по информатике информация определяется как «содержание сообщения, сигнала, памяти, а также сведения, содержащиеся в сообщении, сигнале или памяти». Следовательно, чтобы правильно принять информацию, необходимо сначала понять, о чем, собственно, идет речь, а затем уже - какие же сведения
кроются в этом сообщении.
В компьютерной технологии это оказывается очень важно, поскольку все привычные нам виды хранения и передачи информации в компьютере представляются одинаково стандартным образом в виде битов6, каждый их которых может принимать только два значения:
«1» или «О». Эти знаки можно трактовать так: «истина» или «ложь», «да» или «нет», а если проводить аналогию с живым мозгом, то одна клетка мозга - нейрон, находясь в «возбужденном» или «невозбуж-
5 Информатика: Энциклопедический словарь для начинающих/Под ред.
академика РАЕН Д.А.Поспелова. - М., 1994. С. 41.
6 Слово «бит» (двоичная цифра) произошло от английского сокращения «bit» (binary digit) - один из двух знаков 0 или 1, используемых в двоичной системе счисления. В системах обработки и хранения данных: наименьшая порция информации, воспринимаемая компьютером, которая физически реализуется, например, в виде одиночного импульса, передаваемого по схеме, или минимального участка магнитного диска, способного хранить знак «О» или «I».
92
ции. 1 пятому, если использовать средства визуализации содержания памяти компьютера и заглянуть в нее, то можно увидеть, что в памяти записаны лишь одни нули и единички. А если выделить какой-то фрагмент памяти, то, глядя на эти нули и единички, нельзя ничего сказать о том, что они обозначают, если не знать содержания этого фрагмента памяти.
Может возникнут вопрос: а как же тогда в этой памяти могут запоминаться тексты, рисунки, звуки и т.п., если все в итоге принимает форму нулей и единиц? И неужели эти нули и единички когда-то были портретом или, наоборот, могут превратиться в него? Да, это -так. Об этом более подробно будет рассказано ниже. А сейчас лишний раз подчеркнем, что в памяти компьютера абсолютно вся информация хранится в однотипном виде нулей и единиц.
Если содержание памяти компьютера неизвестно, то определить, что там находится («Этюд в багровых тонах» или этюд Шопена), в общем случае невозможно. А если содержание памяти известно, например символьный текст или графический образ того же текста, но выполненного от руки и переведенного с помощью сканера в цифровую (компьютерную) форму, то, расшифровывая комбинации нулей и единичек, чем, собственно, постоянно только и занимаются отдельные блоки компьютера, можно определить и отразить на экране монитора, какие же конкретно сведения содержатся в этой памяти, т. е. можно установить, какой текст там записан, о чем, собственно, идет речь.
Существует строгое математическое определение понятия информации, которое, в свою очередь, опирается на понятие энтропии. Упрощенно понятие энтропии можно определить как уровень неопределенности ситуации, от которой хотелось бы полностью избавиться. Математическое определение энтропии в упрощенном виде может выглядеть так:
(2.1)
где Е - энтропия (или информационная мера неопределенности), log2() - функция логарифма по основанию 2, N - количество возможных состояний интересующего объекта, процесса или явления.
Если, задав некоторый вопрос или получив некоторое сообщение об интересующем нас объекте, снимается часть неопределенности, т. е. вместо числа возможных вариантов N его состояния получается уменьшенное число N2, то новая энтропия будет равна Е2 =
logzCNz). Разность между исходной энтропией (неопределенностью) и последующей принято называть количеством полученной информации:
I = Е - Ег (2.2)
Предположим, что нам удалось задать вопрос так, что новое число возможных состояний (или ответов) стало равным N; = N/2, т. е. если до вопроса были возможны N вариантов равновероятных ответов, а ответ на вопрос сузил это число вдвое, то теперь получаем количество информации I = Е - Ег = logzCN) - logz(N/2) = log2(N) -
log2(N)+log2(2)=log2(2)=l.
Поскольку понятие количества информации полностью базируется на понятии энтропии, то при оценке количества получаемой информации можно поступать двояко: или следить за тем, на сколько снижается энтропия, и величину этого снижения использовать в качестве меры количества информации, или оценивать, сколько может быть ответов на задаваемый вопрос и все ли ответы будут равновероятными. Если последнее утверждение верно, то в качестве количественной меры информации можно брать величину
I = log2(M), (2.3)
где М - число возможных равновероятных ответов. Эту же формулу
для удобства можно записать иначе:
log2(Konn4ecTBO равновероятных вариантов ответа) = = (количеству информации).
Поэтому на любой вопрос, ответ на который с равной вероятностью может быть «да» или «нет», всегда получаем одну единицу информации I = logz(M) = logz(2) = 1.
Поскольку один бит памяти компьютера может хранить только два возможных варианта ответа на некоторый вопрос (ноль или единицу), то в одном бите памяти компьютера можно хранить не более
одной условной единицы информации.
Много это или мало? Если запись, состоящая из нескольких битов, высокоинформативная, то это очень много (скажем точнее - предельно много), а если эта запись так же пуста, как некоторые пустопорожние фразы, то даже большое количество заполненных информационных битов может быть вообще неинформативным.
Приведем два простых примера. Первыу - чисто ученический -игра в угадывание чисел. Предположим, один участник игры загадывает любое число от 1 до 128, а второй игрок должен его угадать за минимальное количество вопросов, ответы на которые могут быть
94
только односложными («да» и «нет»). Если формулировать вопросы таким образом, чтобы ответы на них содержали максимально возможное количество получаемой информации, то теоретически для угадывания числа потребуется задать семь вопросов. Хотя многие учащиеся поначалу утверждают, что в худшем случае может потребоваться задать 127 вопросов.
Оптимальная стратегия постановки вопросов очень проста - каждый вопрос должен делить текущее множество возможных вариантов задуманного числа на две равновеликие группы. Первый вопрос зададим так: задуманное число больше, чем 64? Если ответ будет «нет», то значит задуманное число лежит в интервале 1-64. А если ответ будет «да», то в интервале 65-128. В любом случае уровень неопределенности оказывается сниженным со 128 до 64 возможных вариантов задуманного числа. В зависимости от новой исходной ситуации, вторым вопросом может быть (если оказалось, что задуманное число лежит в интервале от 65 до 128); задуманное число больше, чем 96? Ответ на этот вопрос также даст нам одну единицу информации. Если исходный уровень энтропии сначала равнялся Ео = log2(128) = 7, то после первого вопроса он стал равен е| = log2(64) = 6. А после второго - Ё2 = logz(32) = 5. Каждый раз, задавая вопрос, ответ на который приносит одну единицу информации, мы снижаем неопределенность на единицу. Поэтому-то данная задача и решается за семь ходов.
Приведенный пример предельно упрощен. В реальной жизни все намного сложнее. Но понимание информационных законов позволяет лучше ориентироваться в реальных жизненных ситуациях. Например, в развитие предыдущей игры существует другая, в которой угадываются не числа, а слова. Если учесть, что задуманным может быть любое слово русского языка7, то поначалу может показаться, что данная игра может закончиться очень нескоро. Однако, оценивая меру неопределенности в исходном состоянии этой задачи, получаем Е = logz( 100000) яа 16,6 условных единиц, т. е. примерно за 17 односложных вопросов в принципе можно угадать любое русское слово. Реально это удастся далеко не каждому, поскольку надо уметь каждый раз задавать не абы какие вопросы, а лишь такие, ответы на которые сужали бы вдвое текущую неопределенность.
Рассмотрим второй пример. Предположим, мы занимаемся раскрытием некоторого преступления, о котором ничего неизвестно,
7 В обычном орфографическом словаре их около 100 тыс.
95
кроме того, что оно совершено одним из жителей города с миллионным населением. Поначалу энтропия (или уровень неопределенности) будет примерно равна Е = logz( 1000000) яа 20 условных единиц. При этом условно предполагается, что преступление с равной вероятностью мог совершить любой житель города, включая грудных детей и немощных стариков.
Предположим, что мы получили некоторое сообщение, из которого достоверно следует, что преступник мужского пола. На сколько единиц снизилась при этом энтропия? Оказывается - ровно на одну условную единицу, если полагать, что число мужчин в этом городе примерно равно числу женщин и вероятности совершения преступления мужчиной и женщиной одинаковы. Новый уровень неопределенности стал равен logz( 1000000/2) » 19. Он снизился на одну единицу, значит, в сообщении находилась одна условная единица информации. Но вспомним; что оценить информативность сообщения в подобных случаях можно и иначе, идя от обратного - не от того, сколько осталось подозреваемых, а от того, во сколько раз сузился их круг. Для этого следует воспользоваться формулой (2.3). Если сначала была альтернатива - «мужчина» или «женщина», то, сняв ее, получаем количество информации равное log2(2)=l. Это та же самая условная единица информации. Подобным приемом будем пользоваться и дальше. Вместо того, чтобы рассчитывать оставшуюся неопределенность, постараемся оценить информационную емкость сообщения, которая рассчитывается по той же формуле (2.3), т. е. будем работать не с числом оставшихся подозреваемых, а с числом возможных вариантов ответов на вопрос, позволяющих разбивать текущую неопределенную ситуацию на равные и равновероятные части (не обязательно две). Поясним это дальнейшим ходом «раскрытия» преступления.
Предположим, что на следующем этапе стал достоверно известен возраст преступника. Если допустить, что средняя продолжительность жизни составляет 64 года и все возрастные группы жителей города заполнены равномерно, то, получив сообщение о возрасте преступника, фактически имеет примерно шесть условных единиц информации, поскольку в нашем случае log2(M) = log2(64) = 6 (см. формулу 2,3).
Таким образом, два сообщения о поле и возрасте преступника снизили энтропию с 20 до 13 условных единиц. А если из некоторых сообщений станет известен еще и день рождения преступника, то эн-
96
тропия уменьшится еще на 8,5 условных единиц, поскольку в году 365 дней и по формуле (2.3) получаем log2(M) = logz(365) » 8,5. В итоге - из 20 единиц информации, которые необходимы нам для полного «раскрытия» преступления, уже получено 15,5 условных информационных единиц, что составляет примерно три четверти от требуемого. Осталось добыть всего лишь 4,5 двоичных единиц информации и преступление будет полностью «раскрыто».
Приведенный пример иллюстрирует, каким образом можно количественно оценивать информационную емкость разных сообщений. Данные, собираемые в ходе реального раскрытия того или иного преступления, зачастую несут лишь малые доли условных единиц информации. Некоторые сообщения могут иметь разное содержание, но фактически нести одинаковую информацию.
Остановившись на достигнутом в «раскрытии» преступления, предположим теперь, что получено новое сообщение, из которого достоверно следует лишь то, что преступник мужского пола. В этом случае мы фактически ничего нового не узнаем, никакой новой информации не получаем, поскольку уровень неопределенности (энтропии) при этом не изменяется. С таким явлением хорошо знакомы все, кому приходилось изучать тома уголовных или уголовно-розыскных дел, многие документы которых могут иметь разное содержание, но не привносить новой информации в раскрытие преступления в силу либо повторяемости содержащихся в них сведений, (безусловно, важных для раскрытия преступления), либо их ненужности для раскрытия.
Возвращаясь к первоначальному вопросу о том, что же находится в памяти компьютера, теперь можно ответить так - в ней может находиться информация, но будет она там или нет и какая именно -зависит от того, что в эту память записано и как следует понимать эту запись. Поэтому, когда говорят: «в памяти содержится некоторая запись», или «в память записана или занесена некоторая информация», или «в память внесена запись», или «в память внесена информация», следует помнить, что некоторые из этих высказываний могут в той или иной ситуации оказаться некорректными. Однако, чтобы не возникало подобной путаницы, в компьютерной технологии принято любую запись, пусть даже абсолютно неинформативную, называть файлом. Более точное определение понятия «файл» будет дано ниже. Однако прежде, чем перейти к более точному определению понятия
4 Заказ 1497
97
»файл», следует сказать несколько слов о другой единице представления информационных записей в компьютерной технологии.
Информационная запись в виде одного бита - это минимально возможная (атомарная) информационная запись. Однако, если бы компьютер оперировал только такими минимальными информационными записями, то его реальное быстродействие было бы недопустимо низким. Поэтому любой компьютер за одно элементарное действие оперирует не с одним битом, а с целой серией битов, которая называется машинным словом. Чем выше класс компьютера, тем длина одного машинного слова больше. Обычно машинные слова состоят из 8, 16, 32 или 64 битов. 64 битовые компьютеры - это высокопрофессиональная вычислительная техника, применяемая в основном в сложных физических и технических системах. Лучшими 64 битовыми компьютерами в 1995-1997 гг. были компьютеры серии Alpha фирмы DEC. Первые бытовые компьютеры, например IBM-PC/XT, были 8 битовыми. Следующее поколение бытовых компьютеров IBM-PC/AT (модель IBM-286) были 16 битовыми. А модели IBM-386, IBM-486 и Pentium являются 32 битовыми компьютерами.
Чтобы сравнивать объемы информационных записей в разных компьютерных системах, обычно используют 8 битовое машинное слово, которое называется байтом. Следовательно, байт - это 8 битов, составляющих единое целое, интерпретируемых и обрабатываемых компьютером информационных записей. Исторически сложилось так, что байт стал основной единицей измерения всех объемов информационных записей. Причин тому очень много, начиная от чисто технических (электронных) и заканчивая особенностями письменной культуры разработчиков компьютерных технологий. Следует вспомнить, что на первых компьютерах в основном обрабатывалась числовая и символьная информация. А поскольку в европейской культуре количество всех письменных символов не превышает 256, то для их кодировки оказывается достаточным именно 8 битов. Если бы компьютерная технология начала развиваться не в европейской, а в восточной культуре, где для кодировки всех иероглифов потребовались бы тысячи комбинаций кодов из элементарных битов, то возможно, что роль одного байта играло бы машинное слово длиной не в 8, а в 16 или даже в 32 бита. С помощью 16 битов можно закодировать 65 536 символов, а с помощью 32 битов - более 4 млрд. различных символов (точнее - 4 294 967 296 символов).
98
Для входящих в мир цифровых информационных технологий порой бывает сложно привыкнуть к новой информационной единице записи - байт. Но поскольку с помощью одного байта обычно кодируется один символ, то на первых порах для удобства можно ставить знак равенства между буквой и байтом. Поэтому, если говорится, что некоторый документ, содержащий только символьную информацию, по объему равен N байт, то можно считать, что в нем содержится N символов (букв). Причем к символам относятся также все пробелы между словами, а также ряд других невидимых символов типа окончания строки (возврата каретки пишущей машинки) и др. Всегда следует помнить, что реально в памяти компьютера хранятся не сами символы (буквы), а наборы битов (нулей и единичек) из восьми штук, называемых байтами. Разное сочетание этих нулей и единичек соответствует разным символам, с которыми имеют дело в реальной жизни.
Для пользователя компьютерной технологией основной структурной единицей информационной записи является файл. Если попытаться ранжировать основные элементы хранения информации в памяти компьютера, то в порядке возрастания они располагаются следующим образом:
- бит - минимальная (атомарная) единица информационной записи, принимающая, например, значения: ноль или единица;
«байт - информационная запись, состоящая из восьми битов;
- файл - информационная запись, состоящая из произвольного числа байтов.
Более крупным носителем информации обычно называется том, содержащий произвольное число файлов.
Остановимся на некоторых условностях, принятых в компьютерной технологии, при работе с файлами. Итак, не вдаваясь в детали, можно сказать, что файл - это некоторая информационная запись, находящаяся в памяти компьютера или на некотором томе - магнитном носителе цифровой информации типа дискеты, винчестера, стриммера (магнитной ленты) и т.п. Следует подчеркнуть, что по своей логической структуре электронная память компьютера и любого носителя цифровой информации абсолютно идентичны. Все они состоят из битов, сгруппированы в байты, из которых составляются файлы. Поэтому, если заглянуть в память компьютера, можно увидеть там лишь множество нулей и единичек (см.рис.2.2.1). Точно так же выглядят и «внутренности» любого файла. Подчеркнем - информация разного типа хранится в однотипных ячейках памяти компьютера.
4*
99
Рис.2.2.1. Трансформация разных видов информационных записей в единую цифровую форму
Слово «файл» пришло к нам из английского языка (file), где оно имеет очень много значений: напильник, пилочка для ногтей, хитрец, пройдоха, жулик, скоросшиватель, шпилька, подшитые бумаги, дело, подшитый комплект газет, картотека, ряд, шеренга, хвост, очередь и др. Отсюда ясно, почему именно это слово было выбрано для обозначения компьютерной информационной записи. В нем одновременно скрывается смысл многих свойств того, что хотелось бы обозначить этим словом8.
Существует формальное определение понятия файла - это «поименованная целостная совокупность данных на внешнем носителе»9. Оно полностью соответствует сложившимся современным понятиям. Поэтому только на внешних носителях информации цифровые записи называются файлами, а если они переносятся в электронную (внутреннюю) память компьютера, то обычно файлами уже не называются.
Поскольку обработка центральным процессором возможна только тех информационных записей, которые находятся в электронной оперативной памяти, то после загрузки содержимого файла с магнитного диска в оперативную электронную память некоторое время в компьютере существуют две идентичные цифровые информационные записи. Первая - это та, которая первоначально находилась (и осталась) на диске. И вторая - это копия первой, но уже загруженная в электронную оперативную память. То, что находится в оперативной памяти компьютера, файлом уже не называется. Более того, строго говоря, не всегда битовая картинка цифровой записи в файле совпадает с копией этой же записи в памяти компьютера, поскольку, чтобы обработать данные, содержащиеся в файле, не обязательно загружать его полностью в электронную память. Электронная память всегда более ограничена по объему, чем внешняя. Поэтому зачастую из файла загружаются лишь его фрагменты, необходимые для работы. Как и когда это происходит, пользователь обычно не знает. Если он при этом удаляет внешний носитель информации, например дискету из компьютера, то программа, управляющая обработкой информации, может попросить вернуть дискету на место. В том случае, если программа недоброкачественная, то может произойти сбой в работе всего компьютера.
8 На рис.2.2.1 длинные шеренги рядов насечек из единиц, объединенных единой информационной связью.
9 Борковский А.Б. Англо-русский словарь по программированию и информатике (с толкованиями). - М., 1987.
101
Таким образом действуют все типы компьютеров. Поэтому следует запомнить, что обрабатывая некоторую информацию на компьютере, мы в действительности работаем с информационными записями, расположенными в электронной оперативной памяти компьютера. И если их не сохранить на внешнем носителе информации (диске или дискете), то после выключения компьютера вся вновь введенная, измененная или обработанная информация будет безвозвратно утеряна. Операция переноса информации из энергозависимой, и поэтому недолговременной, электронной оперативной памяти на долговременную внешнюю (магнитные диски) называется сохранением. Сохраняется же информация, только в файлах.
Учитывая отмеченные особенности, уместно упомянуть распространенную ошибку начинающих пользователей компьютерной технологии, плохо представляющих названные процессы. Нельзя выключать (или перезагружать) компьютер после ввода или обработки данных, без их сохранения в файле.
Более того, следует ввести за правило - никогда не выключать (или перезапускать) компьютер, не завершив корректно все работающие программы. Дело в том, что большинство прикладных программ, начиная свою работу, открывают старые или заводят новые файлы, считывают из них или записывают служебную информацию, которая используется на всем протяжении существования и использования данной программной системы. В момент выхода из программы все обмены информационными данными между оперативной памятью и файлами на внешних носителях корректно завершаются, за что несет ответственность сама программа. Если это не происходит, то рано или поздно могут возникнуть неполадки в работе не только данной системы программ, но и всего компьютера.
Возвращаясь к формальному определению понятия файла как поименованной целостной совокупности данных на внешнем носителе, рассмотрим основные атрибуты «поименованное™».
Естественно, что первым главным атрибутом любого файла является его имя. Имя файла - это несовпадающая с другими именами файлов совокупность символов, обозначающая определенную цифровую информационную запись на внешнем носителе. В разных компьютерных системах (точнее - в операционных системах) существуют свои ограничения на имена файлов. Но есть некоторые общие правила. Например, в имени файлов нельзя употреблять разделительные