Руководство по языку B.Pascal 7

       

Целочисленные типы


В Borland Pascal имеется пять предопределенных целочисленных типов: Shortint (короткое целое), Integer (целое), Longint (длин- ное целое), Byte (длиной в байт) и Word (длиной в слово). Каждый тип обозначает определенное подмножество целых чисел, как это по- казано в следующей таблице.

Предопределенные целочисленные типы Таблица 4.1 ---------------------T--------------------T--------------------- ¦ Тип ¦ Диапазон ¦ Формат ¦ +--------------------+--------------------+---------------------+ ¦ короткое целое ¦ -128 .. 127 ¦ 8 бит со знаком ¦ ¦ (Shortint) ¦ ¦ ¦ +--------------------+--------------------+---------------------+ ¦ целое ¦ -32768 .. 32767 ¦ 16 бит со знаком ¦ ¦ (Integer) ¦ ¦ ¦ +--------------------+--------------------+---------------------+ ¦ длинное целое ¦ -2147483648 .. ¦ 32 бита со знаком ¦ ¦ (Longint) ¦ ..2147483647 ¦ ¦ +--------------------+--------------------+---------------------+ ¦ длиной в байт ¦ 0 .. 255 ¦ 8 бит без знака ¦ ¦ (Byte) ¦ ¦ ¦ +--------------------+--------------------+---------------------+ ¦ длиной в слово ¦ 0 .. 65535 ¦ 16 бит без знака ¦ ¦ (Word) ¦ ¦ ¦ L--------------------+--------------------+----------------------

Арифметические действия над операндами целочисленного типа предполагают 8-битовую, 16-битовую и 32-битовую точность в соот- ветствии со следующими правилами:

- Тип целой константы представляет собой встроенный целочис- ленный тип с наименьшим диапазоном, включающим значение этой целой константы.

- В случае бинарной операции (операции, использующей два операнда), оба операнда преобразуются к их общему типу пе- ред тем, как над ними совершается действие. Общим типом является встроенный целочисленный тип с наименьшим диапа- зоном, включающим все возможные значения обоих типов. Нап- ример, общим типом для целого и целого длиной в байт явля- ется целое, а общим типом для целого и целого длиной в слово является длинное целое. Действие выполняется в соот- ветствии с точностью общего типа и типом результата явля- ется общий тип.

- Выражение справа в операторе присваивания вычисляется не- зависимо от размера или типа переменной слева.

- Любые операнды размером в байт преобразуются к промежуточ- ному операнду размером в слово, который совместим перед выполнением арифметической операции с типами Integer и Word.

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

Примечание: Приведение типов описывается в Главах 5 и 6.


Формат, выбираемый для представления переменной целого типа, зависит от ее минимальной и максимальной границ:

1. Если обе границы находятся в диапазоне -128..127 (Shotrint - короткое целое), то переменная хранится, как байт со знаком.

2. Если обе границы находятся в диапазоне 0..255 (Byte - байтовая переменная), то переменная хранится, как байт без знака.

3. Если обе границы находятся в диапазоне -32768..32767 (Integer - целое), то переменная хранится, как слово со знаком.

4. Если обе границы находятся в диапазоне 0..65535 (Word - переменная длиной в слово), то переменная хранится, как слово.

5. В противном случае переменная хранится, как двойное сло- во со знаком (Longint - длинное целое).



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