Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
535.54 Кб
Скачать

42.Организация данных в памяти. Связанное распределение памяти. Адресная функция.

Форма представления структур данных в памяти ЭВМ зависит исп-ния данных, т.к. эффективность выполнения тех или иных операций обработки данных различна. Форм представления структур данных в памяти ЭВМ определяются тем, как адресуются элементы стр-ры данных в памяти машины – по месту или по содержимому. Здесь указываются логич-е или физич-е адреса данных, определяющие местоположение данных в памяти машины, а также размещение данных, и их выборка осуществляются по известному значению ключа.

Проблема представления логических структур данных в памяти ЭВМ заключается в нахождении эффективных методов отображения логической структуры данных на физическую структуру хранения. Такое отображение называют адресной функцией.

При реализации адресной функции используют два основных метода: последовательное распределение памяти и связанное распределение памяти.

При связанном распределении памяти для построения структуры необходимо задать отношения следования и предшествования элементов с помощью указателей. Указателями служат адреса, хранимые в записях данных. Здесь значение адресной функции можно получить только путем просмотра хранящихся указателей. 

Структура линейного списка, представленная с помощью связанного распределения, называется также цепной структурой или цепью.

Для достижения большей гибкости при работе с линейными списками в каждый узел X[i] вводятся два указателя. Один из указателей реализует связь рассматриваемого узла с узлом X[i-1], а другой – с узлом XIi+1] 

Обозначим ч/з SOC Х([i]) указатель, хранящийся в записи списка Х;

Λ- означает конец спика Х, т.е. SOC(X[n])= Λ.

ТОР(Х)-базовый адрес, кот явл-ся адресом первого узла

Тогда адресная ф-я для связанного линейного списка опред-ся в виде:

Базовый адрес задается при обращении к списку.

Введя обозначение указателя на предыдущий узел – PRE Х([i]), адресная ф-я представлена для двунаправленного линейного списка в прямом и обратном направлениях:

Связанные списки – удобная форма представления динамически изменяющихся линейных структур. Любое произвольное изменение порядка записей, сокращение или расширение вектора данных в какой-либо записи не требуют перемещения записей в памяти ЭВМ. Для выполнения этих операций достаточно лишь изменить значения полей связи.

43.Набор в модели данных codasyl. Определение, назначение, графическая интерпретация.

Сетевая модель, так же как и иерархическая, использует графовое и табличное представление. Основная конструкция сетевой модели данных CODASYL – набор. Набор – это поименованное двухуровневое дерево, которое реализует связь между записями двух типов: владельцем набора и членом набора (рис. 1). Разрешаются только связи один ко многим.

Рис. 1.

Основные свойства набора:

  • Набор имеет имя;

  • В каждом наборе только один владелец;

  • В каждом наборе 0,1 или несколько членов;

  • Набор существует, если только существует запись-владелец;

  • Экземпляр записи может входить только в один экземпляр набора данного типа;

  • В общем случае каждый набор – это вход в БД.

С помощью наборов можно строить многоуровневые деревья и простые сетевые структуры. Так как роль записи жестко не фиксируется, то в одном наборе она может быть членом, а в другом владельцем.

В сетевых моделях реальных СУБД запись может иметь любую структуру, например, простую линейную, как в реляционных СУБД, либо более сложную, включая массивы, повторяющиеся группы. Например, на данном рис. 2. представлены два набора, владельцем обоих набором является Преподаватель.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]