На этом шаге мы рассмотрим целые типы.
По сравнению с реализациями Borland (Turbo) Pascal в группу целых типов были добавлены еще два типа (Smallint и Cardinal).В Object Pascal группа целых типов разделяется на две категории:
К фундаментальным относятся типы Shortint, Smallint, Longint, Byte и Word.
К родовым типам относятся "родоначальник" всех целых типов - тип Integer - и тип Cardinal, представляющие соответственно целое чиcло со знаком и целое число без знака, оптимально реализованные для конкретного процессора и конкретной операционной системы.
Характеристики всех целых типов приведены в таблице 1:
| Название типа | Идентификатор | Диапазон представления чисел | Размер памяти |
|---|---|---|---|
| Фундаментальные типы | |||
| Однобайтовое короткое целое со знаком. | Shortint | -128..127 | 1 байт |
| Двухбайтовое целое со знаком. | Smallint | -32768..32767 | 2 байта |
| Четырехбайтовое длинное целое со знаком. | Longint | -2147483648..2147483647 | 4 байта |
| Однобайтовое короткое целое без знака. | Byte | 0..255 | 1 байт |
| Двухбайтовое целое без знака. | Word | 0..65535 | 2 байта |
| Родовые типы | |||
| Родовое целое со знаком. | Integer | -32768..32767 или -2147483648..2147483647 |
2 байта или 4 байта |
| Родовое целое без знака. | Cardinal | 0..65535 или 0..2147483647 |
2 байта или 4 байта |
Конкретный тип и точность констант и результатов вычисления выражений целого типа устанавливаются минимально необходимыми для их представления.
Для того чтобы достигать универсального и оптимального загрузочного кода, при написании программ рекомендуется использовать преимущественно родовые типы Integer и Cardinal, а фундаментальные типы применять только тогда, когда требуется фиксированное представление числа в памяти.
На следующем шаге мы рассмотрим вещественные типы.