Данные и информация – понятия, на обыденном уровне, тождественные, но в информатике под данными понимаются факты реального мира или идеи, представленные в формализованном виде. Следует обратить внимание на требование формализации, которое означает, что произвольные «куски» информации данными не являются. Информация практически есть некоторое приращение наших знаний, получаемое при анализе имеющихся данных. Естественно, что это определение информации не является формальным и не может использоваться в рамках формальной теории. Но определение помогает понять, что сами по себе данные не обеспечивают никакой информации, поскольку необходимо понимать, что означает та или иная совокупность данных. Так, например, совокупность двоичных знаков «00000100» может означать или число «4», или, например, символ с кодом «4». В то же время, число «4» может означать «4 книги», «4 компьютера» и т.д. Процесс получения информации из данных обычно называется их интерпретацией, но интерпретация данных требует привлечения дополнительного инструментария.
Модель данных – это интеллектуальное средство, позволяющее реализовывать интерпретацию данных и таким образом способствовать получению информации из данных.
Формализуем данное понятие. Как правило, данные отражают свойства (характеристики) объектов реального мира. Данные, представляющие одно и тоже свойство различных объектов объединяются в так называемые именованные категории. Например, рост, вес или фамилия – суть именованные категории для данных, описывающих объекты класса “человек”.Совокупность именованных категорий для однотипных объектов образуют модель плоских файлов (иначе, модель инвертированных файлов).
Данные, хранящиеся в памяти ЭВМ представляют собой совокупность нулей и едениц (битов). Биты объединяются в последовательности: байты, слова и т.д. Каждому участку оперативной памяти, который может вместить один байт или слово, присваивается порядковый номер (адрес).
Какой смысл заключен в данных, какими символами они выражены - буквенными или цифровыми, что означает то или иное число - все это определяется программой обработки. Все данные необходимые для решения практических задач подразделяются на несколько типов, причем понятие тип связывается не только с представлением данных в адресном пространстве, но и соспособом их обработки.
Любые данные могут быть отнесены к одному из двух типов: основному (простому), форма представления которого определяется архитектурой ЭВМ, или сложному, конструируемому пользователем для решения конкретных задач.
Данные простого типа это - символы, числа и т.п. элементы, дальнейшее дробление которых не имеет смысла. Из элементарных данных формируются структуры (сложные типы) данных.
Некоторые структуры:
Массив(функция с конечной областью определения) - простая совокупность элементов данных одного типа, средство оперирования группой данных одного типа. Отдельный элемент массива задается индексом. Массив может быть одномерным, двумерным и т.д. Разновидностями одномерных массивов переменной длины являются структуры типа кольцо, стек, очередь и двухсторонняя очередь.
Запись(декартово произведение) - совокупность элементов данных разного типа. В простейшем случае запись содержит постоянное количество элементов, которые называют полями. Совокупность записей одинаковой структуры называется файлом. (Файлом называют также набор данных во внешней памяти, например, на магнитном диске). Для того, чтобы иметь возможность извлекать из файла отдельные записи, каждой записи присваивают уникальное имя или номер, которое служит ее идентификатором и располагается в отдельном поле. Этот идентификатор называют ключом.
Такие структуры данных как массив или запись занимают в памяти ЭВМ постоянный объем, поэтому их называют статическими структурами. К статическим структурам относится также множество.
Имеется ряд структур, которые могут изменять свою длину - так называемые динамические структуры. К ним относятся дерево, список, ссылка.
Важной структурой, для размещения элементов которой требуется нелинейное адресное пространство является дерево. Существует большое количество структур данных, которые могут быть представлены как деревья. Это, например, классификационные, иерархические, рекурсивные и др. структуры. Более подробно о деревьях рассказано в параграфе 1.2.1.