ОБ АВТОРЕ Казиев Валерий Муаедович, кандидат физико-математических наук, доцент кафедры информатики математического факультета КБГУ, Соросовский доцент 1999, 2000, 2001 гг., лауреат Всероссийских конкурсов учебников и учебных пособий Министерства образования РФ (2001 г.) и Фонда развития отечественного образования (2004 г.), автор и научный руководитель разработки электронных учебников «Системный анализ и моделирование» и «Язык Паскаль», признанных одними из лучших на Всероссийском конкурсе образовательных интернетресурсов и электронных учебников портала «ИКТ в образовании» (http://www.ict.ru), персонального образовательного сайта – номинанта Всероссийского конкурса образовательных интернетресурсов и электронных учебных пособий «ИТ-образование в Рунете» в номинации «Виртуальные учебно-методические комплексы», автор более 150 научных и научно-методических работ, включая 17 учебников и учебных пособий (http://www.kaziev.pp.ru, kaziev@kbsu.ru). ПОЧЕМУ НУЖНА ЭТА КНИГА? В настоящее время образование требует, чтобы в области информатики обучаемые получали знания и навыки, позволяющие выходить за пределы минимально необходимых, как правило, пользовательских, знаний, умений и навыков. Без этого невозможно решение сложных междисциплинарных проблем информатики, построение и реализация моделей, алгоритмов и технологий их решения. Этого требует и современные образовательные концепции обучающих, а также предпочтения обучаемых. ЧЕМ МЕТОДИЧЕСКИ ОТЛИЧАЕТСЯ ЭТА КНИГА ОТ ДРУГИХ? В данной книге читателю предлагается материал, который на достаточно строгом научном уровне и в то же время на достаточном низком уровне требований к предварительному уровню грамотности читателя, объясняет фундаментальные основы информатики и новых информационных технологий. Для этого используется специальная (апробированная многолетним преподаванием информатики), ориентированная на понимание фундаментальных основ науки «информатика» и достаточно большая, полная система содержательных и формализованных определений, подробно решенных примеров, обучающих и контролирующих тестов с ответами, оригинальных задач и тем для самостоятельной работы читателя. СТРУКТУРА КНИГИ Книга состоит из следующих разделов: 1. Информатика и её предмет. 2. Информация и сообщение - представление, шифрование и измерение 3. Информационно-логические задачи и методы. 4. Системы счисления. 5. Алгебра высказываний и предикатов. 6. Алгоритмы. Алгоритмы работы с числами. 7. Алгоритмы работы с одномерными массивами. 8. Алгоритмы работы с двумерными массивами. 9. Алгоритмы работы с текстами. 10. Алгоритмы работы с предикатами. 11. Данные. 12. Проектирование, тестирование и трассировка алгоритмов. 13. Исполнители алгоритмов. 14. Основы компьютера. 15. Алгоритмические языки и методы трансляции. 16. Вычислительная система. 17. Формализация и аксиоматизация, модельное представление знаний. 18. Математическое и компьютерное моделирование. 19. Новые информационные технологии. 19.1. Компьютерный (компьютеризированный) и виртуальный офис. 19.2. Базы знаний и экспертные системы. 19.3. Электронная почта и телекоммуникационный доступ. 19.4. АРМ, САПР и интеллектуальные системы. 19.5. Интегрированные пакеты прикладных программ. 19.6. Средства и системы машинной графики. 19.7. Мультимедиа, гипертекст, гипермедиа. 19.8. Нейро- и нечетко-математические (информатические) технологии. 19.9. Технология виртуальной реальности. 19.10. Технологии информационного реинжиниринга. 19.11. Объектно-ориентированные и средо-ориентированные технологии. 19.12. CASE-технологии. 20. Компьютерные сети и системы. 21. Информатизация общества. СТРУКТУРА КАЖДОГО РАЗДЕЛА А. Теория, обстоятельная и строгая изложенная, но доступная, так как использовано большое количество специально разработанных содержательных примеров («на понимание») с подробными решениями (анализом). Б. Вопросы для самоконтроля и обсуждения (7 вопросов к каждому разделу). В. Оригинальные, как правило, авторские задачи для самостоятельного решения (7 задач к каждому разделу). Г. Оригинальные, авторские тестовые задания для обучающего и аттестационного тестирования (7 заданий к каждому разделу). Д. Таблица ответов ко всем тестовым заданиям. Е. Оригинальные, авторские темы для самостоятельной научноисследовательской и проектной работы, для подготовки рефератов и аннотированных интернет-листов (7 тем к каждому разделу). ДЕМО (СЦЕНАРИЙ РАЗДЕЛА 2) 2. Информация и сообщение - представление, шифрование и измерение (В отличие от книги, материал приводится сокращенно, фрагментарно). Понятие информации (informatio - разъяснение, осведомление, изложение) является одним из основных, ключевых понятий не только в информатике, но и в математике, в физике и др. Понятие «информация» - плохо формализуемое и структурируемое понятие. В силу его всеобщности, объёмности, расплывчатости оно часто понимается неточно и неполно. Как правило, это понятие в курсе информатики не определяется, принимается как исходное базовое понятие, неопределяемый терм. Информация трактуется по-разному, например, как: сущность, которая вызывает изменения в некоторой информационно-логической (инфологической - состоящей из данных, знаний, абстракций и т.д.) модели системы (математика, системный анализ); сообщения, полученные системой от внешнего мира в процессе адаптивного управления, приспособления (теория управления, кибернетика); отрицание энтропии, отражение меры хаоса в системе (термодинамика); связи, устраняющие неопределённость в системе (теория информации); вероятность выбора в системе (теория вероятностей); отражение разнообразия в системе (физиология, биокибернетика); отражение материи, атрибут сознания, “интеллекта” системы (философия). В соответствии с парадигмой информатики как фундаментальной образовательной и научной дисциплины, её ролью в усилении междисциплинарных связей и познании системно-информационной картины мира, необходимо введение в это фундаментальное понятие информатики на научном, строго-понятийном, но и доступном, содержательном уровне. … Алфавит - конечное множество знаков для представления сообщений, т.е. цепочек из этих знаков (слов), образуемых по некоторым правилам. Пример. Примерами алфавитов являются: алфавит арифметики - множество из десяти цифр, знаков арифметических операций и десятичной точки (запятой); алфавит из знаков русского языка, который ошибочно часто называется алфавитом русского языка; алфавит русского языка множество знаков русского языка, знаков препинания и пробела; алфавит из точек и тире в азбуке Морзе и др. Информация - это некоторая последовательность сведений, знаний, сообщений, выражаемых с помощью некоторого алфавита символов, жестов, звуков. Информация или регистрируется, или преобразовывается, или передается, или используется (актуализируется) с помощью некоторых сообщений. Формы облачения информации в сообщения различны. Пример. Для живых существ - сигналы, жесты; для различных технических устройств - сигналы. Информация по отношению к окружающей среде (или к использующей её среде) бывает трех типов: входная, выходная и внутренняя. … Входная информация (по отношению к окружающей среде) информация, которую система воспринимает от окружающей среды. Выходная информация (по отношению к окружающей среде) - информация, которую система выдает в окружающую среду. Внутренняя, внутрисистемная информация (по отношению к системе) - информация, которая хранится, перерабатывается, используется только внутри системы, актуализируется лишь подсистемами системы. Это идеализированное (с точки зрения физики открытых систем) понятие. Пример. Человек воспринимает, обрабатывает входную информацию, например, данные о погоде на улице и формирует выходную реакцию - форму одежды. При этом используется и внутренняя информация, например, генетически заложенная (приобретённая) физиологическая информация, например, о «морозостойкости» человека. … Основные свойства информации (и сообщений): полнота (минимально необходимые сообщения для понимания); актуальность (своевременность, необходимость); ясность (выразительность сообщений на языке интерпретатора); адекватность, точность, корректность (актуализации знаний); интерпретируемость и понятность (интерпретатору информации); достоверность (отображения сообщениями); информативность (сообщений, отображений информации); массовость (применимость ко всем проявлениям); кодируемость и экономичность (актуализации сообщений); сжимаемость и компактность (сообщений); защищённость и помехоустойчивость (актуализации сообщений); устойчивость (к изменениям входных данных); доступность (интерпретатору сообщений, для приёма-передачи); ценность (значимость на уровне подготовки потребителя к восприятию). … Информация - это содержание сообщения, сообщение - форма проявления информации. Это приращение, развитие, актуализация знаний, возникающее в процессе интеллектуальной деятельности человека. Никакая информация не появляется сразу - этому предшествует этап накопления, осмысления, систематизации опытных данных, взглядов. Знание - продукт такого процесса. Мышление необходимый атрибут такого процесса. Пример. Рекламный щит - простой красочный кусок дерева (железа), но информация заложенная в сообщениях на этом щите должна обладать всеми вышеперечисленными свойствами и только тогда этот щит будет ассоциироваться у интерпретатора (человека) с рекламируемым товаром (услугами) и актуализировать информацию. При этом вся форма представления рекламы должна строиться с учетом понятности интерпретатору, быть информативной. Пока символы не организованы определенным образом, не используются для некоторой определённой цели, они не отражают информацию. … Сообщения измеряются в байтах, килобайтах, мегабайтах, гигабайтах, терабайтах, петабайтах и эксабайтах. Любые сообщения кодируются в ЭВМ в цифровом виде, с помощью алфавита из нулей и единиц, записывается и реализуются в ЭВМ в битах. Соотношения между единицами измерения сообщений: 1 бит (от слова binary digit — двоичная единица) это 0 или 1, 1 байт = 8 битов, например, байт вида 10001110, 1 килобайт (1К) = 1024 байтов, 1 мегабайт (1М) = 1024К, 1 гигабайт (1Г) = 1024 М, 1 терабайт (1Т) = 1024Г , 1 петабайт (1П) = 1024Т, 1 эксабайт (1Э) = 1204П. Последние три единицы (есть еще и три следующие за ними) редко используются. Обычно хватает остальных. Пример. Матричный принтер имеет скорость печати 180 байт в секунду. Определим время, необходимое для распечатки 10 листов, если каждый лист вмещает 60 строк по 30 символов. Каждый лист содержит 60´30=1800 символов, а так как каждый символ кодируется байтом, то всего на 1 листе будет 1800 байт информации. Для печати одного листа потребуется 1800/180=10 (сек). Для печати 10 листов необходимо 100 сек. (около 17 мин.). … Кодом называется правило, описывающее соответствие данного набора знаков одного множества Х знакам другого множества Y. Если каждый символ Х при кодировании - отдельный знак Y, то такое соответствие - кодирование. Если для каждого символа из Y существует код для X, то это правило называется декодированием. Любая информация может быть воспринята и обработана приёмником этой информации только в виде некоторых закодированных сообщений на языке сигналов, жестов, символов и т.д. Кодирование - процесс преобразования букв (слов) одного алфавита в буквы (слова) другого алфавита. При кодировании важен выбор разделителя слов, иначе процесс декодирования может быть неоднозначным. Пример. Человек способен различать примерно 130 градаций яркости. Определим сколько бит необходимо, чтобы их закодировать, т.е. какой минимальной разрядности комбинации битов нужны для этого. Для кодировки одного (двух) цветов нужна однобитовая комбинация (например, белый - бит 0, черный - бит 1), кодируются 21 цвета; для кодировки 1-4 цветов необходима двухбитовая комбинация (например, белый - 00, желтый - 01, синий - 10, черный - 11), кодируются 22 цвета; для кодировки 18 цветов необходима трехбитовая комбинация (например, оранжевый - 000, белый 001, черный - 010, синий - 011, красный - 100, голубой - 101, зеленый - 110, бежевый 111), кодируются 23 цвета. Отсюда видно, что для кодировки 130 цветов необходимо выбрать число разрядов n так, чтобы было выполнено неравенство: 2n130. Так как 28 =256130, а 27=128<130, то необходимо брать для кодировки 130 градаций яркости восьмиразрядные битовые комбинации (байты). … Правила кодирования (шифрования) не могут быть произвольными. Они должны быть такими, чтобы зашифрованное сообщение можно было бы прочесть (расшифровать). Однотипные правила (типа правила Цезаря) можно объединять в классы. Если внутри класса правил выбран (определён) некоторый параметр (числовой, табличный и т.д.), изменяя значения которого можно перебрать (варьировать) все правила, то такой параметр называется шифровальным ключом. Имеются две большие группы шифров: шифры перестановки и шифры замены. Шифр перестановки изменяет только порядок следования символов исходного сообщения. Шифр замены меняет каждый символ кодируемого сообщения на другие символы, не меняя порядка их следования. Пример. Шифр Цезаря - шифр типа перестановки. Шифр, состоящий в замене каждого символа алфавита русского языка его двухзначным порядковым номером - шифр типа замены. Восстановление некоторого зашифрованного сообщения по ключу - расшифрование, а восстановление (прочтение) его без известного ключа - вскрытие (взлом) шифра. … Для измерения информации используются различные принципы и методы, например, часто используется мера информации по Р.Хартли и К.Шеннону. Рассмотрим их. Количество информации - числовая величина, адекватно характеризующая информацию по разнообразию, структурированности, определённости, выбору состояний системы. Если рассматривается система, которая может принимать одно из n возможных состояний, то актуальна задача оценки такого выбора, исхода. Такой оценкой может стать мера информации (события). Мера информации - критерий оценки количества информации. 1. Мера Р. Хартли. Пусть имеется N состояний системы S или N опытов с различными, равновозможными, последовательными состояниями системы. Если каждое состояние системы закодировать, например, двоичными кодами определённой длины d, то эту длину необходимо выбрать так, чтобы число всех различных комбинаций было бы не меньше, чем N. Наименьшее число, при котором это возможно, или мера разнообразия множества состояний системы задаётся формулой Р. Хартли: H=(1/ln2)log2N (бит). Пример. Чтобы определить состояние системы из двух возможных состояний, т.е. получить некоторую информацию о системе, необходимо задать 1 вопрос. Узнав состояние, мы увеличиваем суммарную информацию о системе на 1 бит (I=log22). Для 3-4 возможных состояний информация равна 2 битам (I=log24). Если система имеет n различных состояний, то максимальное количество информации равно I=log2n. Утверждение Хартли: если во множестве X={x1, x2, ..., xn} искать произвольный элемент, то для его нахождения необходимо иметь не менее logan (единиц) информации. Пример. ДНК человека можно представить себе как некоторое слово в четырехбуквенном алфавите, где каждой буквой помечается звено цепи ДНК или нуклеотид. Определим сколько информации (в битах) содержит ДНК, если в нем содержится примерно 1,51023 нуклеотидов (по разным оценкам физиологов эта цифра различна, но мы сейчас на этом не будем акцентировать внимание). На один нуклеотид приходится log2(4)=2 (бит) информации. Следовательно, структуры ДНК в организме человека позволяет хранить 31023 бит информации. Это вся информация, куда входит и избыточная. Реально используемой, - структурированной в памяти человека информации, - гораздо меньше. В этой связи, заметим, что человек за среднюю продолжительность жизни использует около 5-6 % нейронов (нервных клеток мозга - “ячеек ОЗУ человека”). Генетический код чрезвычайно сложная и упорядоченная система записи информации. Информация, заложенная в генетическом коде (по учению Дарвина) накапливалась многие тысячелетия. Хромосомные структуры - своеобразный шифровальный код и при клеточном делении создаются копии шифра, каждая хромосома - удваивается, в каждой клетке имеется шифровальный код, при этом каждый человек получает, как правило, свой набор хромосом (код) от матери и от отца. Шифровальный код разворачивает процесс эволюции человека. Жизнь, как отмечал известный физик Э.Шредингер, “упорядоченное и закономерное поведение материи, основанное ... на существовании упорядоченности, которая поддерживается всё время”. Уменьшение (увеличение) Н говорит об уменьшении (увеличении) разнообразия состояний N системы. Обратное, как это следует из формулы Хартли, - также верно. … Вопросы для самоконтроля 1. Что такое информация? Приведите пример некоторой 2. Как классифицируется информация? Приведите примеры 3. Чем отличается информация от сообщения? Приведите 4. Что такое алфавит? Приведите примеры алфавитов и слов в 5. Как и какими единицами измеряют сообщения? Запишите 6. 7. информации. различного типа. примеры. них. соотношения между единицами измерения информации. Что такое кодирование, декодирование? Приведите примеры. Сформулировать общую задачу кодирования (декодирования). Задачи 1. 2. Принтер печатает 3,2 Килобайт в минуту, а каждый символ печатаемого документа представляется байтом. За сколько минут напечатает данный принтер документ из 16 страниц, если на каждой странице 64 строки по 64 символа? Сколько минимально вопросов нужно задать, чтобы отгадать закодированное натуральное число (обоснуйте ответ): а) от 1 до 31; б) от 1 до 100; в) от 1 до N? … 7. Некоторая система может принимать 128 различных равновероятных состояний. Если состояние системы неизвестно, то каково количество информации в системе? Если известно, что система находится в состоянии номер 8, то чему равно количество информации? Тест 1. Любой алфавит обладает всеми перечисляемыми свойствами: а) компактность, конечность, сжимаемость, строгость; б) компактность, полнота, ясность, сжимаемость; в) полнота, конечность, уникальность, информативность; г) полнота, информативность, уникальность, универсальность. 2. Код - правило, описывающее соответствие: а) слова алфавита А другому слову А; б) одного знака алфавита А двум и более знакам А; в) двух и более знаков А одному знаку А; г) знака алфавита А другому знаку А. … 7. Неверно утверждение: а) информация - это содержание сообщения; б) сообщение - форма проявления информации; в) формы облачения информации в сообщения различны; г) информация и сообщение – ничем не отличаются. Таблица правильных ответов к тестам 1 2 3 4 5 6 7 В Г А А А Г Г Темы научных исследований и рефератов (Интернет-листов) 1. 2. 3. 4. 5. 6. 7. Информация как знание. Информация как абстракция. Информация как мера порядка и организации в системе. Информация как мера разнообразия в системе. Информация как мера структурированности системы. Информация как уменьшение неопределенности в системе. Информация как отражение материи.