Главная » Free Pascal » Числовые данные

0

Полный перечень целочисленных типов данных, используемых в программах на языке Free Pascal, приведен в табл. 4.1. По сравнению с языком Object Pascal здесь появился новый тип 8-байтовых чисел без знака (QWord).

Таблица 4.1

Тип

Длина, байт

Наименьшее значение

Наибольшее значение

Byte

1

0

255

Word

2

0

65 535

LongWord

4

0

4 294 967 295

Cardinal

4

0

4 294 967 295

QWord

8

0

18 446 744 073 709 551 615

ShortInt

1

–128

127

SmallInt

2

–32 768

32 767

Integer

4

–2 147 483 648

2 147 483 647

LongInt

4

–2 147 483 648

2 147 483 647

Int64

8

–263

263 – 1

Список вещественных типов данных приведен в табл. 4.2.

Таблица 4.2

Тип

Длина, байт

Наименьшее значение

Наибольшее значение

Количество десятичных цифр

Single

4

–1.5   1045

3.4   1038

7—8

Real48

6

–2.9   1039

1.7   1038

11—12

Double

8

–5   10324

1.7   10308

15—16

Extended

10

–3.6   104951

1.1   104932

19—20

Comp

8

–263

263 – 1

19—20

Currency

8

От –922337203685477.5808

до +922337203685477.5807

19—20

Тот факт, что целочисленный формат Int64 и вещественный формат Comp име- ют идентичное машинное представление, объясняется историей развития языка Паскаль. Изначально в языке был предусмотрен только формат Comp, отнесенный к вещественным данным из-за слишком больших границ допустимого интервала. Арифметические операции над данными такого типа выполнялись с помощью спе- циальных подпрограмм. По мере развития технических возможностей IBM PC и расширения команд сопроцессора, ориентированного, главным образом, на выпол- нение операций над данными с плавающей запятой, 8-байтовый тип целочислен- ных данных стал одним из аппаратных форматов сопроцессора. Для сохранения преемственности со старыми программами, в которых тип Comp считался вещест- венным, список форматов вещественных типов данных в Паскале сохранили. (Ну, не обижать же язык из-за отсутствия длинных целочисленных данных!) Вдобавок в реализациях языков C++ и Pascal в среде Windows форматы Integer и LongInt друг от друга не отличаются (в стандарте языка не оговорено, сколько байтов должно отводиться для хранения этих данных).

Источник: Кетков, Ю. Л., Свободное программное обеспечение. FREE PASCAL для студентов и школьников, Ю. Л. Кетков, А. Ю. Кетков. — СПб.: БХВ-Петербург, 2011. — 384 с.: ил. + CD-ROM — (ИиИКТ)

По теме:

  • Комментарии