Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

СД типа файл прямого доступа

СД типа последовательный файл.

 

Файл последовательного доступа используется для решения задач, использующих поочередное обращение к данным, когда нет требования.

Основные операции над СД типа последовательный файл:

1. инициализация;

2. обработка данных без их изменения;

3. модификация файла.

Инициализация файла:

1. присвоить файлу имя;

2. открытие нового файла (формируется буфер, и указатель принимает значение 0);

3. подготовка данных;

4. запись компоненты (указатель перемещается на 1);

5. закрытие файла (формируется маркер конца файла).

Обработка данных:

1. задание имени файла;

2. открыть сформированный файл (с помощью процедуры Reset);

3. прочитать данные, сделать обработку;

4. закрыть файл.

Модификация файла (добавление новых компонент, изменение существующих компонент):

1. присвоить имя;

2. открыть файл;

3. установить указатель на следующую после последней записи компоненту (использовать для этого процедуру Seek (<файловая переменная>, FileSize(<файловая переменная>)));

4. подготовка данных;

5. запись;

6. закрыть файл.

 

 

Файл прямого доступа используется, если есть ограничение на время доступа к информации.

Основные операции над СД типа последовательный файл:

1. инициализация;

2. обработка данных;

3. модификация..

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

Обработка данных:

1. присвоить файлу имя;

2. открыть сформированный файл;

3. запросить ключ;

4. установить указатель с использованием информации о нахождении ключа;

5. прочитать;

6. закрыть файл.

Модификация (изменение записи):

1. присвоить имя;

2. открыть сформированный файл, запросить ключ;

3. подвести указатель к нужной записи;

4. обработать компоненту;

5. опять подвести указатель к нужной компоненте;

6. записать;

7. закрыть файл.

В более сложном случае:

1) С помощью какого-либо алгоритма обработать ключ, вытекающий из какой-либо предметной области и вычислить адрес. Алгоритм определения места ключа в файле осуществляет отображение шифров на адреса. Это отображение 1:1. Сложность состоит в определении функции отображения Ф(к).

Пример: Имеем g=6, n=13, где g – номер класса (g=1, 2,…, 10), n – номер по списку в журнале (n=1, 2,…,25). K = 100g + n (n = k – 100g)

Ak = A0 + 25(g – 1) + n – 1 = A0 + 25g – 25 + n – 1 = A0 + 25g – 26 + k – 100g = A0 – 75g – 26 + k = A0 – 75[k/100] – 26 + k = Ф(k) – функция отображения.

2) Если функцию отображения Ф(k) найти не удается, то нужно провести индексирование. Функция Ф(k) строится с помощью таблицы.

 
 

 


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

Использование справочника является единственной возможностью ускорения поиска в неупорядоченном файле. Последовательный перебор всех записей неупорядоченного файла заменяется быстрым поиском в упорядоченном справочнике. Размер таблицы меньше размера файла, следовательно таблицу удобнее сортировать. Таблица запоминается вместе с файлом. Отображение идет в отношении 1:1.

Следует заметить, что сложность можно понизить, если использовать динамический справочник, обрабатывая данные в динамической памяти:

           
   
 
 
   
 

 


<== предыдущая лекция | следующая лекция ==>
Накопители на магнитных дисках | СД типа индексно-последовательный файл
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 318; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.