Справочник по Ada 95
13.5.2 Атрибуты расположения в памяти
Статическая семантика
Для компонента C составного, не массива объекта R, определены атрибуты расположения в памяти:
- R.C'Position
- Обозначает то же значение, что и R.C'Address - R'Address. Значение этого атрибута имеет тип universal_integer.
- R.C'First_Bit
- Обозначает смещение, от начала первого из элементов памяти, занимаемых C, первого бита, занимаемого C. Это смещение измеряется в битах. Первый бит элемента памяти имеет номер ноль. Значение этого атрибута имеет тип universal_integer.
- R.C'Last_Bit
- Обозначает смещение, от начала первого из элементов памяти, занимаемых C, последнего бита, занимаемого C. Это смещение измеряется в битах. Значение этого атрибута имеет тип universal_integer.
Рекомендации по реализации
Если компонент представлен с помощью указателя (например, смещения) на фактические данные компонента, а эти данные смежны с остальной частью объекта, то атрибуты расположения в памяти должны отражать место фактических данных, а не указателя. Если компонент размещён несмежно с остальной частью объекта, то при обращении к одному из его атрибутов расположения в памяти должно генерироваться предупреждение.