Учебник Информатика. Базовый курс. Симонович С.В.. С. В. Симоновичаинформатикабазовый курс2е издание
Скачать 17.96 Mb.
|
Табличные структуры (таблицы данных, матрицы данных) С таблицами данных мы тоже хорошо знакомы, достаточно вспомнить всем извест- ную таблицу умножения. Табличные структуры отличаются от списочных тем, что элементы данных определяются адресом ячейки, который состоит не из одного пара- метра, как в списках, а из нескольких. Для таблицы умножения, например, адрес ячейки определяется номерами строки и столбца. Нужная ячейка находится на их пересечении, а элемент выбирается из ячейки. При хранении табличных данных количество разделителей должно быть больше, чем для данных, имеющих структуру списка. Например, когда таблицы печатают в книгах, строки и столбцы разделяют графическими элементами — линиями верти- кальной и горизонтальной разметки (рис. 1.4). Если нужно сохранить таблицу в виде длинной символьной строки, используют один символ-разделитель между элементами, принадлежащими одной строке, и другой разделитель для отделения строк, например так: Для розыска элемента, имеющего адрес ячейки п), надо просмотреть набор данных с самого начала и пересчитать внешние разделители. Когда будет отсчитан т-\ разделитель, надо пересчитывать внутренние разделители. После того как будет найден разделитель, начнется нужный элемент. Он закончится, когда будет встречен любой очередной разделитель. .2. Данные 29 Планета Меркурий Венера Земля Марс Юпитер Расстояние до Солнца, а.е. 0,39 0,67 1.0 5,2 Относительная масса 0,1 318 Количество спутников 0 0 1 2 16 1.4. В двумерных таблицах, которые печатают в книгах, применяется два типа разделителей — вертикальные и горизонтальные Еще проще можно действовать, если все элементы таблицы имеют равную длину. Такие таблицы называют матрицами. В данном случае разделители не нужны, поскольку все элементы имеют равную длину и количество их известно. Для розыска элемента с адресом п) в матрице, имеющей М строк и N столбцов, надо про- смотреть ее с самого начала и отсчитать a [N(m - 1) + (п - 1)] символ, где а — длина одного элемента. Со следующего символа начнется нужный элемент. Его длина тоже равна а, поэтому его конец определить нетрудно. Таким образом, табличные структуры данных (матрицы) — это упорядоченные структуры, в которых адрес элемента определяется номером строки и номером стол- бца, на пересечении которых находится ячейка, содержащая искомый элемент. Многомерные таблицы. Выше мы рассмотрели пример таблицы, имеющей два из- мерения (строка и столбец), но в жизни нередко приходится иметь дело с таблица- ми, у которых количество измерений больше. Вот пример таблицы, с помощью которой может быть организован учет учащихся. Номер факультета: 3 Номер курса (на факультете): 2 Номер специальности (на курсе): 2 Номер группы в потоке одной специальности: 1 Номер учащегося в группе: 19 Размерность такой таблицы равна пяти, и для однозначного отыскания данных об учащемся в подобной структуре надо знать все пять параметров (координат). Иерархические структуры данных Нерегулярные данные, которые трудно представить в виде списка или таблицы, часто представляют в виде иерархических структур. С подобными структурами мы очень хорошо знакомы по обыденной жизни. Иерархическую структуру имеет система почтовых адресов. Подобные структуры также широко применяют в научных систематизациях и всевозможных классификациях (рис. 1.5). В иерархической структуре адрес каждого элемента определяется путем доступа (маршрутом), ведущим от вершины структуры к данному элементу. Вот, например, как выглядит путь доступа к команде, запускающей программу Калькулятор (стандарт- ная программа компьютеров, работающих в операционной системе Windows 98): Пуск • Программы • Стандартные • Калькулятор. Глава Информация и информатика Рис. 1.5. Пример иерархической структуры данных Дихотомия данных. Основным недостатком иерархических структур данных явля- ется увеличенный размер пути доступа. Очень часто бывает так, что длина маршрута оказывается больше, чем длина самих данных, к которым он ведет. Поэтому в инфор- матике применяют методы для регуляризации иерархических структур с тем, сделать путь доступа компактным. Один из методов получил название дихотомии. Его суть понятна из примера, представленного на рис. 1.6. Рис. 1.6. Пример, поясняющий принцип действия метода дихотомии В иерархической структуре, построенной методом дихотомии, путь доступа к любому элементу можно представить как путь через рациональный лабиринт с поворотами налево (0) или направо (1) и, таким образом, выразить путь доступа в виде ком- пактной двоичной записи. В нашем примере путь доступа к текстовому процессору Word 2000 выразится следующим двоичным числом: 1.2. Данные 31 Упорядочение структур данных Списочные и табличные структуры являются простыми. Ими легко пользоваться, поскольку адрес каждого элемента задается числом (для списка), двумя числами (для двумерной таблицы) или несколькими числами для многомерной таблицы. Они также легко упорядочиваются. Основным методом упорядочения является сортировка. Данные можно сортировать по любому избранному критерию, например: по алфавиту, по возрастанию порядкового номера или по возрастанию какого-либо параметра. Несмотря на многочисленные удобства, у простых структур данных есть и недо- статок — их трудно обновлять. Если, например, перевести студента из одной группы в другую, изменения надо вносить сразу в два журнала посещаемости; при этом в обоих журналах будет нарушена списочная структура. Если переведенного студента вписать в конец списка группы, нарушится упорядочение по алфавиту, а если его вписать в соответствии с алфавитом, то изменятся порядковые номера всех студен- тов, которые следуют за ним. Таким образом, при добавлении произвольного элемента в упорядоченную структуру списка может происходить изменение адресных данных у других элементов. В журналах успеваемости это пережить нетрудно, но в системах, выполняющих автоматическую обработку данных, нужны специальные методы для решения этой проблемы. Иерархические структуры данных по форме сложнее, чем линейные и табличные, но они не создают проблем с обновлением данных. Их легко развивать путем созда- ния новых уровней. Даже если в учебном заведении будет создан новый факультет, это никак не отразится на пути доступа к сведениям об учащихся прочих факультетов. Недостатком иерархических структур является относительная трудоемкость записи адреса элемента данных и сложность упорядочения. Часто методы упорядочения в таких структурах основывают на предварительной индексации, которая заключается в том, что каждому элементу данных присваивается свой уникальный индекс, кото- рый можно использовать при поиске, сортировке и т. п. Ранее рассмотренный прин- цип дихотомии на самом деле является одним из методов индексации данных в иерархических структурах. После такой индексации данные легко разыскиваются по двоичному коду связанного с ними индекса. Адресные данные. Если данные хранятся не как попало, а в организованной структуре (причем любой), то каждый элемент данных приобретает новое свойство (параметр), который можно назвать адресом. Конечно, работать с упорядоченными данными удобнее, но это приходится платить их размножением, поскольку адреса элементов данных — это тоже данные и их тоже надо хранить и обрабатывать. Файлы и файловая структура Единицы представления данных Существует множество систем представления данных. С одной из них, принятой в информатике и вычислительной технике, двоичным кодом, мы познакомились выше. Наименьшей единицей такого представления является бит 32 Глава Информация и информатика Совокупность двоичных разрядов, выражающих числовые или иные данные, образует некий битовый рисунок. Практика показывает, что с битовым представлением удобнее работать, если этот рисунок имеет регулярную форму. В настоящее время в качестве таких форм используются группы из восьми битов, которые называются Понятие о байте как группе взаимосвязанных битов появилось вместе с первыми образцами электронной вычислительной техники. Долгое время оно было машинно- зависимым, то есть для разных вычислительных машин длина байта была разной. Только в конце 60-х годов понятие байта стало универсальным Выше мы видели, что во многих случаях целесообразно использовать не восьми- разрядное кодирование, а 16-разрядное, 24-разрядное, 32-разрядное и более. Группа из взаимосвязанных бит (двух взаимосвязанных байтов) в информатике называ- ется словом. Соответственно, группы из четырех взаимосвязанных (32 разряда) удвоенным словом, а группы из восьми байтов (64 разряда) —учетверенным словом. Пока, на сегодняшний день, такой системы обозначения Единицы измерения данных Существует много различных систем и единиц измерения данных. Каждая науч- ная дисциплина и каждая область человеческой деятельности может использовать свои, наиболее удобные или традиционно устоявшиеся единицы. В информатике для измерения данных используют тот факт, что разные типы данных имеют уни- версальное двоичное представление и потому вводят свои единицы данных, осно- ванные на нем. Наименьшей единицей измерения является байт. Поскольку одним байтом, как правило, кодируется один символ текстовой информации, то для текстовых доку- ментов размер в байтах соответствует лексическому объему в символах (пока исклю- чение представляет рассмотренная выше универсальная кодировка UNICODE). Более крупная единица измерения — килобайт (Кбайт). Условно можно считать, что 1 Кбайт примерно равен 1000 байт. Условность связана с тем, что для вычислитель- ной техники, работающей с двоичными числами, более удобно представление чисел в виде степени двойки и потому на самом деле 1 Кбайт равен байт (1024 байт). Однако всюду, где это не принципиально, с инженерной погрешностью (до 3 %) «забывают» о «лишних» байтах. В килобайтах измеряют сравнительно небольшие объемы данных. Условно можно считать, что одна страница неформатированного машинописного текста составляет около 2 Кбайт. 1.3. Файлы и файловая структура 33 Более крупные единицы измерения данных образуются добавлением префиксов гига- в более крупных единицах пока нет практической надобности. 1 Мбайт 1024 Кбайт = байт 1 Гбайт = 1024 Мбайт = байт 1 = 1024 Гбайт байт Особо обратим внимание на то, что при переходе к более крупным единицам «инже- нерная» погрешность, связанная с округлением, накапливается и становится недо- пустимой, поэтому на старших единицах измерения округление производится реже. Единицы хранения данных При хранении данных решаются две проблемы: как сохранить данные в наиболее компактном виде и как обеспечить к ним удобный и быстрый доступ (если доступ не обеспечен, то это не хранение). Для обеспечения доступа необходимо, чтобы данные имели упорядоченную структуру, а при этом, как мы уже знаем, образуется «паразитная нагрузка» в виде адресных данных. Без них нельзя получить доступ к нужным элементам данных, входящих в структуру. Поскольку адресные данные тоже имеют размер и тоже подлежат хранению, хранить данные в виде мелких единиц, таких как байты, неудобно. Их неудобно хранить и в более крупных единицах (килобайтах, мегабайтах и т. п.), поскольку неполное заполнение одной единицы хранения приводит к неэффективности хранения. В качестве единицы хранения данных принят объект переменной длины, называемый файлом. Файл — это последовательность произвольного числа байтов, обладающая уникальным собственным именем. Обычно в отдельном файле хранят данные, относя- щиеся к одному типу. В этом случае тип данных определяет тип файла. Проще всего представить себе файл в виде безразмерного канцелярского досье, в которое можно по желанию добавлять содержимое или извлекать его оттуда. Поскольку в определении файла нет ограничений на размер, можно представить себе файл, имеющий 0 байтов (пустой файл), и файл, имеющий любое число байтов. В определении файла особое внимание уделяется имени. Оно фактически несет в себе адресные данные, без которых данные, хранящиеся в файле, не станут информа- цией из-за отсутствия метода доступа к ним. Кроме функций, связанных с адреса- цией, имя файла может хранить и сведения о типе данных, заключенных в Для автоматических средств работы с данными это поскольку по имени файла они могут автоматически определить адекватный метод извлечения информа- ции из файла. Понятие о файловой структуре Требование уникальности имени файла очевидно без этого невозможно гаран- тировать однозначность доступа к данным. В средствах вычислительной техники требование уникальности имени обеспечивается автоматически — создать файл с именем, тождественным уже имеющемуся, не может ни пользователь, авто- матика. 34 Глава Информация и информатика Хранение файлов организуется в иерархической структуре, которая в данном случае называется файловой структурой. В качестве вершины структуры служит имя носителя, на котором сохраняются файлы. Далее файлы группируются в каталоги (папки), внутри которых могут быть созданы вложенные каталоги доступа к файлу начинается с имени устройства и включает все имена каталогов (папок), через которые проходит. В качестве разделителя используется символ (обратная косая черта). Уникальность имени файла обеспечивается тем, что полным именем файла считается собственное имя файла вместе с путем доступа к нему. Понятно, что в этом случае на одном носителе не может быть двух файлов с тождественными полными именами. Пример записи полного имени файла: <имя >\...\<имя имя файла> Вот пример записи двух файлов, имеющих одинаковое собственное имя и размещен- ных на одном носителе, но отличающихся путем доступа, то есть полным именем. Для наглядности имена каталогов (папок) напечатаны прописными буквами. С:\АВТОМАТИЧЕСКИЕ АППАРАТЫ\ВЕНЕРА\АТМОСФЕРА\Результаты исследований С:\РАДИ0Л0КАЦИЯ\ВЕНЕРА\РЕЛЬЕФ\Результаты исследований О том, как на практике реализуются файловые структуры, мы узнаем несколько позже, когда познакомимся со средствами вычислительной техники и с понятием файловой системы. Информатика Предмет и задачи информатики Информатика — это техническая наука, систематизирующая создания, хранения, воспроизведения, обработки и передачи данных средствами вычислитель- ной техники, а также принципы функционирования этих средств и методы управ- ленияими. Из этого определения видно, что информатика очень близка к технологии, поэтому ее предмет нередко называют информационной технологией. Предмет информатики составляют следующие понятия: • аппаратное обеспечение средств вычислительной техники; • программное обеспечение средств вычислительной техники; • средства взаимодействия аппаратного и программного обеспечения; • средства взаимодействия человека с аппаратными и программными средствами. Как видно из этого списка, в информатике особое внимание уделяется вопросам взаимодействия. Для этого даже есть специальное понятие — интерфейс. Методы и средства взаимодействия человека с аппаратными и программными средствами называют пользовательским интерфейсом. Соответственно, аппаратные интерфейсы, программные интерфейсы и аппаратно-программные интерфейсы. 1.4. Информатика 35 Основной задачей информатики является систематизация приемов и методов работы с аппаратными и программными средствами вычислительной техники. Цель система- тизации состоит в выделении, внедрении и развитии передовых, наиболее эффектив- ных технологий, в автоматизации этапов работы с данными, а также в методическом обеспечении новых технологических исследований. Информатика — практическая наука. Ее достижения должны проходить подтверж- дение практикой и приниматься в тех случаях, когда они соответствуют критерию повышения эффективности. В составе основной задачи информатики сегодня можно выделить следующие направления для практических приложений: • архитектура вычислительных систем (приемы и методы построения систем, предназначенных для автоматической обработки данных); • интерфейсы вычислительных систем (приемы и методы управления аппаратным и программным обеспечением); • программирование (приемы, методы и средства разработки компьютерных программ); • преобразование данных (приемы и методы преобразования структур данных); • защита информации (обобщение приемов, разработка методов и средств защиты данных); • автоматизация (функционирование программно-аппаратных средств без участия человека); • стандартизация (обеспечение совместимости между аппаратными и программ- ными средствами, а также между форматами представления данных, относя- щихся к различным типам вычислительных систем). На всех этапах технического обеспечения информационных процессов для инфор- матики ключевым понятием является эффективность. Для аппаратных средств под эффективностью понимают отношение производительности оборудования к его стоимости (с учетом стоимости эксплуатации и обслуживания). Для программного обеспечения под эффективностью понимают производительность лиц, работающих с ними (пользователей). В программировании под эффективностью понимают объем программного кода, создаваемого программистами в единицу времени. В информатике все жестко ориентировано на эффективность. Вопрос, как сделать ту или иную операцию, для информатики является важным, но не основным. Основным же является вопрос, как сделать данную операцию эффективно. Истоки и предпосылки информатики Слово информатика происходит от французского слова Informatique, образован- ного в результате объединения терминов Information {информация) и (автоматика), что выражает ее суть как науки об автоматической обработке инфор- мации. Кроме Франции термин информатика используется в ряде стран Восточной Европы. то же время, в большинстве стран Западной Европы США используется другой термин — Computer Science (наука о средствах вычислительной техники). 36 Глава Информация и информатика В качестве источников информатики обычно называют две науки — документалистику кибернетику. Документалистика в конце XIX века в связи с бур- ным развитием производственных отношений. Ее расцвет пришелся на 20-30-е годы XX века, а основным предметом стало изучение рациональных средств и методов эффективности документооборота. Основы близкой к информатике технической науки кибернетики были заложены . трудами по математической логике американского математика Норберта Винера, опубликованными в 1948 году, а само название происходит от греческого слова {kyberneticos — искусный в управлении). Впервые термин кибернетика ввел французский физик Андре Мари Ампер в первой половине XIX веке. Он занимался разработкой единой системы классификации всех наук и обозначил этим термином гипотетическую науку об управлении, которой в то время не существовало, но которая, по его мнению, должна была существовать. Сегодня предметом кибернетики являются принципы построения и функционирова- ния систем автоматического управления, а основными задачами — методы моделиро- вания процесса принятия решений техническими средствами, связь между психоло- гией человека и математической логикой, связь между информационным процессом отдельного индивидуума и процессами в обществе, разработка принципов и методов искусственного интеллекта. На практике кибернетика во случаях опирается на те же программные и аппаратные средства вычисли- тельной техники, что и информатика, а информатика, в свою очередь, заимствует у кибернетики математическую и логическую базу для развития этих средств. Подведение итогов Все процессы в природе сигналами. Зарегистрированные сигналы образуют данные. Данные преобразуются, транспортируются и потребляются с помощью методов. При взаимодействии данных и адекватных им методов образу- ется информация. Информация — это динамический объект, образующийся в ходе информационного процесса. Он отражает диалектическую связь между объектив- ными данными и субъективными методами. Свойства информации зависят как от свойств данных, так и от свойств методов. Данные различаются типами, что связано с различиями в физической природе сигналов, при регистрации которых образовались данные. В качестве средства хра- нения и транспортировки данных используются носители данных. Для удобства операций с данными их структурируют. Наиболее широко используются следую- щие структуры: табличная и иерархическая — они различаются методом адресации к данным. При сохранении данных образуются данные нового типа — адресные данные. Вопросами систематизации приемов и методов создания, хранения, воспроизведения, обработки и передачи данных средствами вычислительной техники занимается техническая наука — информатика. С целью унификации приемов и методов работы с данными в вычислительной технике применяется универсальная система кодирова- ния данных, называемая двоичным кодом. Элементарной единицей представления Вопросы для самоконтроля 37 данных в двоичном коде является двоичный разряд (бит). Другой, более крупной единицей представления данных является байт. Основной единицей хранения данных является файл. Файл представляет собой последовательность байтов, имеющую собственное имя. Совокупность файлов обра- файловую структуру, которая, как правило, относится к иерархическому Полный адрес файла в файловой является уникальным и включает в себя собственное имя файла и путь доступа к нему. |