Массив
Массив — последовательность элементов одного типа, называемого базовым.
На абстрактном уровне массив представляет собой линейную структуру. На физическом уровне массив реализован последовательной (прямоугольной) схемой хранения. Располагаться он может в статической или динамической памяти. Размер памяти, выделяемый под массив, зависит от базового типа элемента массива и от количества элементов в массиве и определяется формулой ; где V мас — объем памяти для массива, V эл — объем памяти одного элемента (слот), k — количество элементов.
На логическом уровне СД типа массив можно описать следующим образом:
1. Type T_ar = array [T1] of T2; { T1 — тип индекса }
Var Ar: T_ar; { T2 — тип элемента}
Массив Ar типа T_ar располагается в статической памяти.
2. Type TP_ar = ^T_ar;
Var P_ar: TP_ar;
Массив типа T_ar будет располагаться в динамической памяти после обращения к процедуре new(P_ar). Адрес массива запишется в переменную P_ar.
Массив — это статическая структура. В процессе выполнения программы количество элементов массива не изменяется. Доступ к элементу массива прямой, осуществляется через индекс элемента, например Ar[i] или P_ar^[i].
|
|
Кардинальное число для массива T_ar:
Car(T_ar) = [Car(T2)] Car(T1)
Набор допустимых операций для СД типа массив:
1. Операция доступа (доступ к элементам массива — прямой; от размера структуры время выполнения операции не зависит).
2. Операция присваивания.