Автор работы: Пользователь скрыл имя, 21 Декабря 2011 в 15:37, реферат
Структуры данных и алгоритмы служат теми материалами, из которых строятся программы. Более того, сам компьютер состоит из структур данных и алгоритмов. Встроенные структуры данных представлены теми регистрами и словами памяти, где хранятся двоичные величины. Заложенные в конструкцию аппаратуры алгоритмы - это воплощенные в электронных логических цепях жесткие правила, по которым занесенные в память данные интерпретируются как команды, подлежащие исполнению. Поэтому в основе работы всякого компьютера лежит умение оперировать только с одним видом данных - с отдельными битами, или двоичными цифрами. Работает же с этими данными компьютер только в соответствии с неизменным набором алгоритмов, которые определяются системой команд центрального процессора.
Понятие структур данных
Информация и ее представление в памяти
Хранение информации
Системы счисления
Непозиционные системы счисления
Позиционные системы счисления
Позиционные системы счисления
Классификация структур данных
Операции над структурами данных
Структурность данных и технология программирования
Список литературы
ГМУ г. Семей.
СРС
На тему: Основные сведения об информационных структурах данных
Группа: 133
Специальность: ОМФ
проверила: Буланова Р.К.
Семей 2011.
ПЛАН
Понятие структур данных
Информация и ее представление в памяти
Хранение информации
Системы счисления
Непозиционные системы счисления
Позиционные системы счисления
Позиционные системы счисления
Классификация структур данных
Операции над структурами данных
Структурность данных и технология программирования
Список литературы
CТРУКТУРЫ ДАННЫХ
Понятие
структур данных
Структуры данных и
алгоритмы служат теми материалами,
из которых строятся программы. Более
того, сам компьютер состоит из
структур данных и алгоритмов. Встроенные
структуры данных представлены теми
регистрами и словами памяти, где
хранятся двоичные величины. Заложенные
в конструкцию аппаратуры алгоритмы
- это воплощенные в электронных
логических цепях жесткие правила,
по которым занесенные в память данные
интерпретируются как команды, подлежащие
исполнению. Поэтому в основе работы
всякого компьютера лежит умение
оперировать только с одним видом
данных - с отдельными битами, или
двоичными цифрами. Работает же с
этими данными компьютер только
в соответствии с неизменным набором
алгоритмов, которые определяются системой
команд центрального процессора. Задачи,
которые решаются с помощью компьютера,
редко выражаются на языке битов.
Как правило, данные имеют форму
чисел, литер, текстов, символов и более
сложных структур типа последовательностей,
списков и деревьев. Еще разнообразнее
алгоритмы, применяемые для решения
различных задач; фактически алгоритмов
не меньше чем вычислительных задач.
Для точного описания абстрактных
структур данных и алгоритмов программ
используются такие системы формальных
обозначений, называемые языками программирования,
в которых смысл всякого
Информация и ее представление в памяти
Начиная изучение структур данных или информационных структур, необходимо ясно установить, что понимается под информацией, как информация передается и как она физически размещается в памяти вычислительной машины.
Хранение информации
В цифровых вычислительных машинах можно выделить три основных вида запоминающих устройств: сверхоперативная, оперативная и внешняя память. Обычно сверхоперативная память строится на регистрах. Регистры используются для временного хранения и преобразования информации. Некоторые из наиболее важных регистров содержатся в центральном процессоре компьютера. Центральный процессор содержит регистры (иногда называемые аккумуляторами), в которые помещаются аргументы (т.е. операнды) арифметических операций. Сложение, вычитание, умножение и деление занесенной в аккумуляторы информации выполняется с помощью очень сложных логических схем. Кроме того, с целью проверки необходимости изменения нормальной последовательности передач управления в аккумуляторах могут анализироваться отдельные биты. Кроме запоминания операндов и результатов арифметических операций, регистры используются также для временного хранения команд программы и управляющей информации о номере следующей выполняемой команды. Оперативная память предназначена для запоминания более постоянной по своей природе информации. Важнейшим свойством оперативной памяти является адресуемость. Это означает, что каждая ячейка памяти имеет свой идентификатор, однозначно идентифицирующий ее в общем массиве ячеек памяти. Этот идентификатор называется адресом. Адреса ячеек являются операндами тех машинных команд, которые обращаются к оперативной памяти. В подавляющем большинстве современных вычислительных систем единицей адресации является байт - ячейка, состоящая из 8 двоичных разрядов. Определенная ячейка оперативной памяти или множество ячеек могут быть связаны с конкретной переменной в программе. Однако для выполнения арифметических вычислений, в которых участвует переменная, необходимо, чтобы до начала вычислений значение переменной было перенесено из ячейки памяти в регистр. Если результат вычисления должен быть присвоен переменной, то результирующая величина снова должна быть перенесена из соответствующего регистра в связанную с этой переменной ячейку оперативной памяти. Во время выполнения программы ее команды и данные в основном размещаются в ячейках оперативной памяти. Полное множество элементов оперативной памяти часто называют основной памятью. Внешняя память служит прежде всего для долговременного хранения данных. Характерным для данных на внешней памяти является то, что они могут сохраняться там даже после завершения создавшей их программы и могут быть впоследствии многократно использованы той же программой при повторных ее запусках или другими программами. Внешняя память используется также для хранения самих программ, когда они не выполняются. Поскольку стоимость внешней памяти значительно меньше оперативной, а объем значительно больше, то еще одно назначение внешней памяти - временное хранение тех кодов и данных выполняемой программы, которые не используются на данном этапе ее выполнения. Активные коды выполняемой программы и обрабатываемые ею на данном этапе данные должны обязательно быть размещены в оперативной памяти, так как прямой обмен между внешней памятью и операционными устройствами (регистрами) невозможен. Как хранилище данных, внешняя память обладает в основном теми же свойствами, что и оперативная, в том числе и свойством адресуемости. Поэтому в принципе структуры данных на внешней памяти могут быть теми же, что и в оперативной, и алгоритмы их обработки могут быть одинаковыми. Но внешняя память имеет совершенно иную физическую природу, для нее применяются (на физическом уровне) иные методы доступа, и этот доступ имеет другие временные характеристики. Это приводит к тому, что структуры и алгоритмы, эффективные для оперативной памяти, не оказываются таковыми для внешней памяти.
Системы счисления
Чтобы обеспечить соответствующую основу для изучения структур данных следует обсудить существующие типы систем счислений: позиционные и непозиционные.
Непозиционные
системы счисления
Числа используются
для символического представления
количества объектов. Очень простым
методом представления
Позиционные
системы счисления
В позиционной системе
счисления используется конечное число
R уникальных символов. Величину R часто
называют основанием системы счисления.
В позиционной системе
Система счисления с основанием десять, или десятичная система является позиционной. Рассмотрим, например, число 1303. Его можно представить в виде:
1*10^3 + 3*10^2 + 0*10^1 + 3*10^0.
(Здесь и далее
символ ^ используется как знак
операции возведения в степень)
В позиционной системе могут быть представлены и дробные числа. Например, одна четвертая записывается в виде 0.25, что интерпретируется как:
2*10^(-1) + 5*10^(-2).
Другой пример позиционной системы счисления - двоичная система. Двоичное число 11001.101 представляет то же самое количество, что и десятичное число 26.625. Разложение данного двоичного числа в соответствии с его позиционным представлением следующее:
1*2^4 + 1*2^3 + 0*2^1 + 1*2^0 + 1*2^(-1) + 0*2^(-2) + 1*2^(-3) =
16 + 8 + 1 + 0.5 + 0.125=26.625.
Наиболее часто встречаются системы счисления имеющие основание 2,8,10 и 16, которые обычно называют двоичной, восьмеричной, десятичной и шестнадцатеричной системами, соответственно. Вся вычислительная техника работает в двоичной системе счисления, так как базовые элементы вычислительной техники имеют два устойчивых состояния. Восьмеричная и шестнадцатеричная системы используются для удобства работы с большими двоичными числами.
Классификация структур данных
Теперь можно дать
более конкретное определение данного
на машинном уровне представления информации.
Независимо от содержания и сложности
любые данные в памяти ЭВМ представляются
последовательностью двоичных разрядов,
или битов, а их значениями являются
соответствующие двоичные числа. Данные,
рассматриваемые в виде последовательности
битов, имеют очень простую
Важный признак структуры данных - характер упорядоченности ее элементов. По этому признакуструктуры можно делить на ЛИНЕЙНЫЕ И НЕЛИНЕЙНЫЕ структуры. В зависимости от характера взаимного расположения элементов в памяти линейные структуры можно разделить на структуры с ПОСЛЕДОВАТЕЛЬНЫМ распределением элементов в памяти (векторы, строки, массивы, стеки, очереди) и структуры с ПРОИЗВОЛЬНЫМ СВЯЗНЫМ распределением элементов в памяти ( односвязные, двусвязные списки). Пример нелинейных структур - многосвязные списки, деревья, графы. В языках программирования понятие "структуры данных" тесно связано с понятием "типы данных". Любые данные, т.е. константы, переменные, значения функций или выражения, характеризуются своими типами.
Информация по каждому типу однозначно определяет :
1) структуру хранения
данных указанного типа, т.е. выделение
памяти и представление данных
в ней, с одной стороны, и
интерпретирование двоичного
2) множество допустимых
значений, которые может иметь
тот или иной объект
3) множество допустимых операций, которые применимы к объекту описываемого типа.
В последующих главах
данного пособия
Операции над структурами данных
Над любыми структурами данных могут выполняться четыре общие операции: создание, уничтожение, выбор (доступ), обновление.
Операция создания
заключается в выделении памяти
для структуры данных. Память может
выделяться в процессе выполнения программы
или на этапе компиляции. В ряде
языков (например, в С) для структурированных
данных, конструируемых программистом,
операция создания включает в себя
также установку начальных
Например, в PL/1 оператор DECLARE N FIXED DECIMAL приведет к выделению адресного пространства для переменной N. В FORTRAN ( Integer I ), в PASCAL ( I:integer ), в C ( int I ) в результате описания типа будет выделена память для соответствующих переменных. Для структур данных, объявленных в программе, память выделяется автоматически средствами систем программирования либо на этапе компиляции, либо при активизации процедурного блока, в котором объявляются соответствующие переменные. Программист может и сам выделять память для структур данных, используя имеющиеся в системе программирования процедуры/функции выделения/освобождения памяти. В объектно-ориентированных языках программирования при разработке нового объекта для него должны быть определены процедуры создания и уничтожения.
Информация о работе Основные сведения об информационных структурах данных