Перераховний тип

 

ЛОГІЧНА СТРУКТУРА. Перераховний тип представляє собою впорядкований тип даних, визначуваний програмістом, тобто програміст перераховує всі значення, що може приймати змінна цього типу. Значення є неповторюваними в межах програми ідентифікаторами, кількість яких не може бути більше ніж 256, наприклад,

type color=(red,blue,green);

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

wіnter_day=(december,january,february);

МАШИННЕ ПРЕДСТАВЛЕННЯ.Для змінної перераховного типу виділяється один байт, у який записується порядковий номер значення, що привласнюється змінній. Порядковий номер визначається з описаного типу, причому нумерація завжди починається з 0.

Наприклад,

var B,С:color;

. . .

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

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

Вміст пам'яті для змінних B і C при цьому наступний:

В – 00000001; С – 00000010.

ОПЕРАЦІЇ. На фізичному рівні над змінними перераховного типу визначені всі базові операції (створення, видалення, вибору, відновлення). При цьому виконується визначення порядкового номера ідентифікатора за його значенням і, навпаки, за номером ідентифікатора визначається його значення.

На логічному рівні змінні перераховного типу можуть бути використані тільки у виразах булевого типу й в операціях порівняння; при цьому порівнюються порядкові номери значень.