Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1 Информатика и программирование.doc
Скачиваний:
10
Добавлен:
01.03.2025
Размер:
327 Кб
Скачать
☆

6 Стандартные типы языка Pascal

Integer – представляет собой подмножество целых чисел.

Тип

Диапазон

Размер

ShortInt

-128..127

8 бит

Integer

-32768..32767

16 бит

LongInt

-2147483648..2147483647

32 бита

Byte

0..255

8 бит (беззнаковый)

Word

0..65535

16 бит (беззнаковый)

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

Тип Real – множество вещественных чисел. В то время как арифметические действия с целыми числами дат точный результат, для таких действий со значениями типа real допускается неточность в пределах ошибок округления, т.к. в вычислениях участвует конечное число цифр. Деление вещественных чисел, дающее вещественный результат обозначают /.

К вещественным типам относятся Single, Double, Comp, Real, Extended.

Логические типы

Boolean, ByteBool, WordBool, LongBool.

Тип Boolean имеет два значения: true, false.

Ord(false)=0, Ord (true)=1; False < True

Succ(false)=true, Pred(true)=false.

Логические операции:

P

Q

P and Q

P or Q

not P

P xor Q

True

True

true

true

false

false

True

False

false

true

false

true

False

True

false

ture

true

true

False

False

false

false

true

false

Операции сравнения дают результат типа boolean. Таким образом, результат некоторого сравнения можно присвоить какой-то переменной или использовать в качестве логического операнда в булевском выражении.

x:=5;y:=8;z:=10;

p:=x<y and y<z (true)

Логические операции and и or имеют свойства, отличающие их от других бинарных операций. В тот время, когда, например, сумма x+y не определена, если x и y – неизвестны, p and q определена даже при неизвестном q, если известно, что p имеет значение false. Это является важным и полезным свойством, поэтому можно дать более точное определение:

P and Q = если P, тогда Q; если не P, тогда false

P or Q = если P, тогда true; если не P, тогда Q

BP поддерживает две различные модели генерации кода для операций or и and: полное и краткое. Полная форма означает, что каждый операнд булевского выражения вычисляется, если результат вычисления уже известен. Эта модель удобна, когда один или более операндов выражения являются функциями с посторонним эффектом. Краткая форма ограничивает вычисления, т.е. они прекращаются, как только известен результат. Эта модель удобна в большинстве случаев, т.к. гарантирует минимум времени выполнения и, кроме того, делает возможными вычисления в конструкциях, которые в других случаях были бы неправильными. Модель выполнения задается {$B-}, {$B+}. По умолчанию – краткая форма.

Символьные типы (Char)

Их значениями являются символы ASCII. Над значениями символьного типа возможны операции сравнения, причем эти операции дают тот же результат, что и соответствующие целочисленные коды их символов.

Функция преобразования: Ord – выдает номер ASCII