Справочное руководство по языку Ада-83

Числовые литералы


Числовые литералы подразделяются на два класса: вещественные литералы и целые литералы. Вещественный литерал — это числовой литерал, который включает точку; целый литерал — это числовой литерал без точки. Вещественные литералы являются литералами типа

универсальный-вещественный.

Целые литералы — литералы типа

универсальный-целый.

числовой-литерал ::= десятичный-литерал | литерал-с-основанием

Ссыпки:

литерал 4.2, универсальный-вещественный тип 3.5.6, универсальный-целый тип 3.5.4.

2.4.1. ДЕСЯТИЧНЫЕ ЛИТЕРАЛЫ

Десятичный литерал — это числовой литерал, выраженный в общепринятой десятичной системе (основание по умолчанию равно десяти).

десятичный-литерал ::= целое [.целое] [порядок]

целое ::= цифра {[подчеркивание] цифра}

порядок ::= Е [+] целое | E - целое

Символ подчеркивания между соседними цифрами десятичного литерала не влияет на значение числового литерала. Буква Е в порядке может быть строчной или прописной буквой с одним и тем же назначением.

Для получения значения десятичного литерала с порядком следует умножить значение десятичного литерала без порядка на степень десяти, заданную порядком. Порядок для целого литерала не должен содержать знак минус.



Примеры:

12 0 1Е6 123_456 -- целые литералы
12.0 0.0 0.156 3.14159_26 -- вещественные литералы
1.34Е-12 1.0Е+6 -- вещественные литералы с порядком

Примечание:

Ведущие нули допускаются. Пробел в числовом литерале недопустим даже между составными частями порядка, поскольку пробел является разделителем. Нулевой порядок для целого литерала допустим.

Ссылки:

прописная буква 2.1, разделитель 2.2, символ пробела 2.1, строчная буква 2.1, цифра 2.1, числовой литерал 2.4.

2.4.2. ЛИТЕРАЛЫ С ОСНОВАНИЕМ

Литерал с основанием — это числовой литерал, в котором явно указано основание. Основание должно принимать значение от 2 до 16.

литерал-с-основанием ::= основание # целое-с-основанием [.целое-с-основанием] # [порядок]


основание :: = целое

целое-с-основанием ::= расширенная-цифра {[подчеркивание] расширенная-цифра}

расширенная-цифра ::= цифра | буква

Символ подчеркивания, заключенный между соседними цифрами литерала с основанием, не влияет на значение этого числового литерала. Основание и порядок записываются в десятичной системе. В качестве расширенных цифр от 10 до 15 допускаются только латинские буквы от А до F. Буква в литерале с основанием (расширенная цифра или буква Е в порядке) может быть строчной или прописной с одним и тем же смыслом.

Предполагается обычный смысл обозначения литерала с основанием; в частности, значение каждой расширенной цифры литерала с основанием должно быть меньше основания. Для получения значения литерала с основанием и порядком следует умножить значение литерала с основанием без порядка на основание, возведенное в указанную порядком степень.

Примеры:

2#1111_1111# 16#FF# 016#0FF# -- целые литералы со значением 255
16#Е#Е1 2#1110_0000# -- целые литералы со значением 224
16#F.FF#E+2 2#1.1111_1111_111#Е11 -- действительные литералы со значением 4095.0

Ссылки:

буква 2.3, порядок 2.4.1, прописная буква 2.1, строчная буква 2.1, цифра 2.1, числовой литерал 2.4.

Пред.  Уровень выше  След.

2.3. ИДЕНТИФИКАТОРЫ   Содержание   2.5. СИМВОЛЬНЫЕ ЛИТЕРАЛЫ

Содержание раздела