Н. Джехани - Язык Ада (1988) (1160771), страница 69
Текст из файла (страница 69)
Вырабатывает число двоичных цифр в двоичной мантиссе модельных чисел подтипа Т.(Этот атрибут вырабатывает число В, см. равд, 3.5.7.) Значение этого атрибута имеет тип универсальный целый. Т'МАЗ(Т(88А Т'ЕРБИ ОН Вырабатывает абсолютное значение разности между мо- дельным числом 1.0 и следующим модельным числом подтипа Т. Значение этого атрибута имеет тип уни- версальный вещественный. Вырабатывает наибольшее значение порядка двоичной канонической формы модельных чисел подтипа Т.(Этот атрибут вырабатывает произведение 4 В, см. равд.
3.5.7.) Значение этого атрибута имеет тип универсальный целый. Т'ЕМАХ Вырабатывает наименьшее положительное (ненулевое) модельное число подтипа Т. Значение этого атрибута имеет тип универсальный вещественный. Т'ВМАь(. Т'( АВВЕ Вырабатывает наибольшее положительное модельное число подтипа Т. Значение этого атрибута имеет тип универсальный вещественный. Атрибуты второй группы вырабатывают характеристики хранимых чисел и включают еле. дующие атрибутьс Т'БАРЕ ЕМАХ Вырабатывает наибольшее значение порядка двоичной канонической формы хранимых чисел базового типа Т. (Этот атрибут вырабатывает число Е, см.
равд. 3.5.7.) Значение этого атрибута имеет тип универсальный целый. Вырабатывает наименьшее положительное (ненулевое) хранимое число базового типа Т. Значение этого атрибу- та имеет тип универсальный вещественный. Т'ВАРЕ БМАЕЕ Базовые операции над плавающим типом включают присваивания, проверку принадлежности, квалификацию, явное преобразование значений других числовых типов в значения этого плавающего типа и неявное преобразование значений типа универсальный вещественный в значения этого типа. Кроме того, для каждого плавающего типа или подтипа Т базовые операции включают перечисленные ниже атрибуты.
В этом представлении Т вЂ” это подтип (подтип Т) дпя любого свойства, зависящего от наложенных на Т ограничений; другие свойства формулируются через базовый тип Т. Первая группа атрибутов вырабатывает характеристики подтипа Т. К атрибутам этой группы относятся атрибут ВАЗЕ (см. 3.3.3], атрибуты Е(ЯЗТ и (.АЗТ (см. 3.5), атрибут представ- пения 8(ЕЕ (см.
13.7.2), а также следующие атрибуты: 324 Глава 3 Т'ЗАРЕ 1 АЙВЕ Вырабатывает наибольшее положительное хранимое число базового типа Т. Значение этого атрибута имеет тип универсальный вещественный. ГЕМАХ = 4ьГМАШТ(ЗЗА ГЕРЗ(ЬОН = 2.0ьь(1 - ГМАМТ(ЗЗА) ГЗМАЬЬ = 2.0ьь(-ГЕМАХ - 1! Т'( АЙЗЕ = 2.0ыГЕМАХ ь (1.0 - 2.0*ь(-ГМАМТ(ЗЗА!1 Атрибут МАМТ(ЗЗА, дающий число двоичных цифр в мантиссе, сам связан с атрибутом 018!ТЗ.
Между характеристиками модельных и хранимых чисел справедливы следующие соотношения: Т'8АЗЕ'ЕМАХ < ГЗАЕЕ ЕМАХ ГВАЗЕ'ЗМАЬЬ >= Т'ЗАРЕ ЗМАИ. т'влве'4зяЗе <= ГЗАее (АВЗе Атрибуты Т'Е1ЙЗТ и Т'(.АЗТ не обязательно вырабатывают модельные или хранимые числа. Если некоторое число цифр определено описанием типа или подтипа Т, то атрибут 018!ТЗ вырабатывает это число. Ссылки: арифметическая операция 3.5.5, 4.5, атрибут 4.1.4, базовая операция 3.3.3, базовый тип 3.3, бинарная аддитивная операция 4.5, 4.5.3, границы диапазона 3.5, квалифицированное выражение 4.7, модельное число 3.5.6, мультипликативная операция 4.5, 4.5.5, объект 3.2, ограничение 3.3, операция 3.3, операция возведения в степень 4.5, 4.5.6, операция отношения 4.5, 4.5.2, плавающий тип 3.5.7, подтип 3.3, предопределенная операция 4.5, преобразование 4.6, присваивание 5.2, проверка принадлежности 4.5, 4.5.2, тип 3.3, тип универсальный вещественный 3.5.6, тип универсальный целый 3.5.4, унарная аддитивная операция 4.5, 4.5.4, универсальный тип 4.10, хранимое число 3.5.6, цифра 2.1, числовой тип 3.5.
3.5.9. ФИКСИРОВАННЫЕ ТИПЫ Для фиксированных типов граница ошибки определяется абсолютной погрешностью, на. зываемой дельтой фиксированного типа. ограничение фиксированного типа::= определение точности фиксированного типа [ограничение диапазона) определение точности фиксированного типа х =беда статическое простое выражение Дельта определяется значением статического простого выражения в определении точное. ти фиксированного типа. Это значение должно принадлежать некоторому вещественному типу и быть положительным (ненулевым).
Если ограничение для фиксированного типа использовано как опеределение вещественного типа, то оно должно включать ограничение диапазона; каждая граница диапазона должна быть определена статическим выражением некоторого ве. щественного типа, но эти две границы не обязаны иметь один и тот же тип. Если ограничение Кроме этого, для объекта А плавающего типа определены атрибуты А'812Е и А'А00ЙЕЗЗ (см.
13.7.2). Для каждого плавающего типа существуют машинно. зависимые атрибуты, которые не относятся к модельным и хранимым числам. Они соответсвуют обозначениям атрибутов МАСН1МЕ ЕМАХ, МАСН1МЕ ЕМ(М, МАСН!МЕ ЙА0(Х, МАСН(МЕ МАМТ(88А, МАСН1МЕ ЙО0- М08 и МАСН(МЕ ОЧЕЙЕ(.ОууЗ (см. 13.7.3). Кроме базовых операций над плавающим типом определены операции отношения и слэ дующие предопределенные арифметические операции; унарные и бинарные аддитивные операции — и +,мультипликативные операции . и /, унарная операция або и операция возведения в степень. Операции над подтипом соответствуют операциям над типом, кроме следующих: прислан. вания, проверки принадлежности, квалификации, явного преобразования и атрибутов первой группы; результаты этих операций переопределены в терминах подтипа.
Примечание. Атрибуты ЕМАХ, ЗМАь(., (АЙВЕ и ЕРЗ(ЕОМ связаны с атрибутом МАМТ188А следующими формулами: Описания и типы З(Б для фиксированного типа использовано в указании подтипа, то ограничение диапазона необязательно. Для любого ненулевого модельного числа фиксированного типа определена каноническая форма.
В этой форме: знак — это либо + 1, либо - 1; мантисса — положительное (ненулевое) целое; любое модельное число кратно некоторому положительному вещественному числу, называемому дискретом, определенному следующим образом: знак мантнсса.дискрет Для модельных чисел фиксированного типа дискрег выбран как наибольшая степень двух, которая не превышает дельту определения точности фиксированного типа. Дискрет можно также задать спецификатором длины (см.
13.2), в этом случае модельные числа кратны заданному значению. Гарантированная минимальная точность операций над фиксированным типом определена в терминах модельных чисел из ограничения для фиксированного типа, которое образует соответствующее определение вещественного типа (см. 4.5.7). Для ограничения фиксированного типа с ограничением диапазона модельные числа включают нуль и все числа, кратные дискрету, мантисса которых может быть выражена точно В двоичными цифрами, а значение В выбрано как наименьшее целое число, для которого каждая граница заданного диапазона — либо модельное число, либо отличается не более чем на дискрет от модельного числа.
Если ограничение для фиксированного типа не включает ограничение диапазона (это допустимо только после обозначения типа в указании подтипа), модельные числа определены дельтой определения точности фиксированного типа и диапазоном подтипа, заданного обозначением типа. Реализация должна иметь по крайней мере один анонимный предопределенныи фиксированный тип. Базовый тип каждого такого фиксированного типа — это сам этот тип. Модель. ные числа каждого предопределенного фиксированного типа включают нуль и все числа, для которых мантисса (в канонической форме) имеет число двоичных цифр, вырабатываемое атрибутом МА(ЧТ188А, и для которых днскрет имеет значение, возвращаемое атрибутом ВМА0..
Описание фиксированного типа в форме (уре Т (в бе((а О галде Е .. В по определению эквивалентно следующим описаниям: (уре фиксированныя тип (в пеш предопределенныи фиксированный тип; вмЫуре Т )в фиксированный тип деда О гапйе фиксированный тип (Ц .. фиксированный тип (В); В этих описаниях фиксированный гнп — это анонимный тип, а предопределенный фиксированный тип неявно выбран реализацией так, чтобы его модельные числа включали описанные ограничением для фиксированного типа модельные числа (т.
е. с помощью О, Е и В, а возмож. но и спецификатора длины, определяющего дискрет). Описание фиксированного типа неправильно, если не существует предопределенного типа, удовлетворяющего этим требованиям. Хранимые числа фиксированного типа — это модельные числа его базового типа. Предвыполнение описания фиксированного типа состоит из предвыполнения эквивалентных описаний типа и подтипа. Если ограничение для фиксированного типа следует за обозначением типа в указании подтипа, то обозначение типа должно задавать фиксированный тип ипи подтип.
Ограничение для фиксированного типа совместимо с обозначением типа, только если дельта из определения точности фиксированного типа не меньше дельты для типа или подтипа, заданного обо. значением типа. Более того, если ограничение дпя фиксированного типа включает ограниче.
ние диапазона, то ограничение для фиксированного типа совместимо с обозначением типа, только если само ограничение совместимо с обозначением типа. Предвыполнение такого указания подтипа включает предвыполнение ограничения диапазона, если оно есть, оно создает фиксированный подтип, модельные числа которого определены соответствующим ограничением для фиксированного типа, а также спецификатором длины, задающим дискрет, если он есть. Значение фиксированного типа принадлежит фиксированному подтипу тогда и только тогда, когда оно принадлежит диапазону, определенному подтипом. 316 Гаева 6 Для всех фиксированных типов предопределены одни и те же арифметические операции (см.