Перечислимый тип

ЛОГИЧЕСКАЯ СТРУКТУРА. Перечислимый тип представляет собой

упорядоченный тип данных, определяемый программистом, т.е. прог-

раммист перечисляет все значения, которые может принимать пере-

менная этого типа. Значения являются неповторяющимися в пределах

программы идентификаторами, количество которых не может быть

больше 256, например,

type color=(red,blue,green);

work_day=(mo,tu,we,th,fr);

winter_day=(december,january,february);

МАШИННОЕ ПРЕДСТАВЛЕНИЕ. Для переменной перечислимого типа

выделяется один байт, в который записывается порядковый номер

присваиваемого значения. Порядковый номер определяется из описан-

ного типа, причём нумерация начинается с 0. Имена из списка пере-

числимого типа являются константами, например,

var B,С:color;

begin B:=bluе; (* B=1 *)

C:=green; (* С=2 *)

Write(ord(B):4,ord(C):4); end.

После выполнения данного фрагмента программы на экран будут

выданы цифры 1 и 2. Содержимое памяти для переменных B И C при этом

следующее: В - 00000001; С - 00000010.

ОПЕРАЦИИ. На физическом уровне над переменными перечислимого

типа определены операции создания, уничтожения, выбора, обновле-

ния. При этом выполняется определение порядкового номера иденти-

фикатора по его значению и, наоборот, по номеру идентификатора-

его значение.

На логическом уровне переменные перечислимого типа могут

быть использованы только в выражениях булевского типа и в опера-

циях сравнения; при этом сравниваются порядковые номера значений.