У таблиці приведені прості типи цих Турбо Паскаль, об'єм пам'яті, необхідний для зберігання однієї змінної вказаного типу, безліч допустимих значень і застосовні операції.
Ідентифікатор
Довжина (байт)
Діапазон значень
Операції
Цілі типи
integer
-32768..32767
+, -, /, *, +-, /, *, Div, Mod>= <= = <> <, >
byte
0..255
+, -, /, *, +-, /, *, Div, Mod>= <= = <> <, >
word
0..65535
+, -, /, *, +-, /, *, Div, Mod>= <= = <> <, >
shortint
-128..127
+, -, /, *, +-, /, *, Div, Mod>= <= = <> <, >
longint
-2147483648..2147483647
+, -, /, *, +-, /, *, Div, Mod>= <= = <> <, >
Речові типи
real
2,9x10-39 - 1,7x1038
+, -, /, *, >=, <=, =, <>, <, >
single
1,5x10-45 - 3,4x1038
+, -, /, *, >=, <=, =, <>, <, >
double
5x10-324 - 1,7x10308
+, -, /, *, >=, <=, =, <>, <, >
extended
3,4x10-4932 - 1,1x104932
+, -, /, *, >=, <=, =, <>, <, >
Логічний тип
boolean
true, false
Not, And, Or, Xor>= <= = <> <, >
Символьний тип
char
усі символи коду ASCII
+, >=, <=, =, <>, <, >
Перераховуваний і інтервальний тип відносяться до типів, визначуваних користувачем і будуть розглянуті нами пізніше.
Додаткові відомості про типи дані.
Порядкові типи, що виділяються з групи простих типів, характеризуються наступними властивостями:
· усі можливі значення порядкового типу є обмеженою впорядкованою множиною;
· до будь-якого порядкового типу може бути застосована стандартна функція Ord, яка в якості результату повертає порядковий номер конкретного значення в цьому типі;
· до будь-якого порядкового типу можуть бути застосовані стандартні функції Pred і Succ, які повертають попереднє і наступне значення відповідно;
· до будь-якого порядкового типу можуть бути застосовані стандартні функції Low і High, які повертають найменше і найбільше значення величин цього типу.
У мові Паскаль введені поняття еквівалентності і сумісності типів. Два типи Т1 і Т2 є еквівалентними (ідентичними), якщо виконується одно з двох умов :
· Т1 і Т2 є одно і те ж ім'ям типу;
· тип Т2 описаний з використанням типу Т1 за допомогою рівності або послідовності рівності. Наприклад:
· type· T1 = Integer;· T2 = T1;· T3 = T2;
Менш строгі обмеження накладаються на сумісність типів. Так, типи є сумісними, якщо:
· вони еквівалентні;
· являються обоє або цілими, або дійсними;
· один тип - інтервальний, інший - його базовий;
· обоє інтервальні із загальним базовим;
· один тип - строковий, інший - символьний.
У Турбо Паскаль обмеження на сумісність типів можна обійти за допомогою приведення типів. Приведення типів дозволяє розглядати одну і ту ж величину в пам'яті ЕОМ як що належить різним типам. Для цього використовується конструкція
Ім'я_Типу(змінна або значення)
Напрмер, Integer('Z') є значенням коду символу 'Z' в двобайтовому представленні цілого числа, а Byte(534) дасть значення 22, оскільки ціле число 534 має тип Word і займає два байти, а тип Byte займає один байт, і в процесі приведення старший байт буде відкинутий.
Змінні та константи
Змінною називають елемент програми, який призначений для зберігання, корекції і передачі даних усередині програми. Усі змінні програми в Турбо Паскаль мають бути оголошені в розділі опису змінних (см далі).
Разом зі змінними в пограммах використовуються і константи. Константа - це ідентифікатор, що означає деяку незмінну величину певного типу. Константи, як і змінні, повинні оголошуватися у відповідному розділі програми.
У Турбо Паскаль застосовується декілька стандартних видів констант :
· Цілочисельні константи. Можуть бути визначені за допомогою чисел, записаних в десятковому або шістнадцятковому форматі даних. Це число не повинне містити десяткової точки.
· Дійсні константи. Можуть бути визначені числами, записаними в десятковому форматі даних з використанням десяткової точки.
· Символьні константи. Можуть бути визначені за допомогою деякого символу (ув'язненого в апострофи).
· Рядкові константи. Можуть бути визначені послідовністю довільних символів (ув'язнених в апострофи).
· Типізовані константи. Є ініціалізованими змінними, які можуть використовуватися в програмах нарівні із звичайними змінними. Кожній константі, що типізується, ставиться у відповідність ім'я, тип і початкове значення. Наприклад: