
- •Лекція 1. Мова програмування turbo-pascal. Трансляція. Види трансляції: інтерпретатор та компілятор. Компілятор turbo-pascal. Характеристика даних у pascal. Системи програмування.
- •Поняття величини.
- •Дані у мові Pascal.
- •Цілий тип.
- •Логічний тип.
- •Опис величин.
- •Опис зміних.
- •Опис констант.
- •Опис типів змінних.
Поняття величини.
Величина - це об’єакт, який має стале або змінне значення. Величини із сталими значеннями називають константами. Змінні величини - це такі, значення яких може змінюватися в процесі виконання алгоритму. Сталі та змінні величини позначаються ідентифікаторами (послідовність букв та цифр, де на першому місці стоїть буква). Наприклад: g, DF, TYUI, H1, D1234. Ідентифікатори (імена) величин можуть бути абстрактними або асоціюватися із загально вживаними словами (SUMA, A). Якщо змінній величині не було надано жодного значення, то вона є невизначеною. Змінна величина зберігає своє значення до отримання нового, іншого значення.
Проміжні величини використовують для тимчасового запам’ятовування результатів обчислень, які не є остаточними і будуть використані для подальших обчислень в межах того самого алгоритму. Вони вживаються для зручності, коли великі та складні обчислення доцільно розділити на декілька частин і позначити результат кожної частини.
Величини можна класифікувати на два класи: клас простих величин та складені величини (структуровані). Прості величини мають в кожний момент часу одне значення, і для запам’ятовування їх у пам'яті ЕОМ треба одну комірчину пам’яті. Структуровані величини у кожний момент часу можуть мати декілька значень, тому в пам’яті ЕОМ для такої величини треба стільки комірчин пам’яті, скільки значень приймає величина. Розмір комірчин пам’яті залежить від типу величини.
Прості величини можуть бути наступних типів:
цілий тип;
дійсний тип;
символьний тип;
логічний тип.
Ціла величинаможе бути додатнім або від’ємним числом (6, -67б, 32456, 0, 18). В пам’яті комп’ютера такі числа подаються за допомогою двійкових кодів. Наприклад, ціле число 318 можна зобразити таким чином :
-
0
0
0
0
00
0
1
0
0
1
1
1
1
1
1
0
А від’ємне число -318 - таким чином:
-
1
0
0
0
00
0
1
0
0
1
1
1
1
1
1
0
В такому зображені перший біт - знак числа (0 - додатне, 1 - від’ємне число). Найбільше число, яке можна записати, використовуючи комірчину пам’яті у 2 байти (16 біт): 1111111111111112=214+213+212+211+210+29+28+27+26+25+24+23+22+21+20=32767.
Якщо розглядати натуральні числа (вони не приймають від’ємних значень), то:
виділивши комірчину довжиною в 1 байт, одержуємо найбільше число 111111112=27+26+25+24+23+22+21+20=255;
виділивши комірчину довжиною в 2 байти, одержуємо найбільше число 1111111111111111=215+214+213+212+211+210+29+28+27+26+25+24+23+22+21+20=65535.
Дійсна величина відрізняється від цілої тим, що в її значенні може бути дробова частина. Дійсні числа використовуються у двох формах - з фіксованою комою та з плаваючою. Наприклад, число 345,456 є числом з фіксованою комою. Але те саме число можна подати у вигляді 3,45456 * 102. Число 0,00678 можна подати у вигляді 6,78*10-3. Величини 3,45456 та 6,78 називають мантисою, а 2 та -3 називають порядком. У такій формі дійсні числа обробляються процесором. Дійсні числа подаються в пам’яті ЕОМ таким чином (схематично):
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
... |
... |
0 |
|
0 |
0 |
1 |
1 |
1 |
0 |
1 |
знак мантиса знак порядок
числа порядку
Для звертання до значень дійсних величин з плаваючою величиною існує затверджена форма. Замість запису мантиса * 10N у програмі треба записати мантиса ЕN. Так, наприклад, число 3,45456 * 102 запишеться як 3.45456Е2, а число 6,78 * 10-3 як число 6.78Е-3. Зверніть увагу на те, що замість коми у запису числа використовується десяткова крапка. Величина комірчини пам’яті, що використовується для дійсної величини, залежить від реалізації компілятора мови програмування. Так, для дійсного числа у мові Pascal використовуються комірчини з 6 байт (може бути 8 чи 10 байт), у мові С відповідно 6 та 8 байт пам’яті.
Число 5 та –16 можна розглядати як цілу величину, так і дійсну. Конкретно приймати рішення треба з контексту задачі. Числові величини дозволяють виконувати арифметичні операції:
додавання +
віднімання -
множення (у програмах *)
ділення (у програмах /)
піднесення до степені
При виконанні операції ділення треба бути особливо уважними, тому що результат може бути як дійсним, так і цілим. Наприклад при виконанні операції 3 2 отримаємо результат 1.5, коли результуюча величина описана як дійсна, або 1, коли результат описаний як ціла величина. У мові програмування Pascal результат ділення може бути описаний тільки як дійсна величина. Операції піднесення до степені у мовах Pascal та С немає.
При записі математичних виразів з величинами треба пам’ятати про пріоритет операцій:
дужки ( )
піднесення до степені
множення та ділення у такому порядку, як вони записані
додавання та віднімання
Крім того, над числовими величинами можна виконувати операції порівняння:
більше >
менше <
не більше (у програмах<=)
не менше (у програмах>=)
дорівнює = (у програмах =або==)
не дорівнює (у програмах<>або!=)
Результатом таких операцій є логічна величина “істина” чи “хибність”
Значеннями символьного типу величин є символи з множини ASCII (American Standard Code For Information Interchange – американський стандартний код для обміну інформації). Ця множина складається з 256 різних символів, впорядкованих визначеним чином. Вона складається з великих та малих літер, цифр, різних символів. Ці значення займають 1 байт пам’яті. Наприклад:
-
0
1
1
0
0
0
1
0
Якщо перевести це число, яке записане в двійковій системі числення, то одержимо десяткове число 98. Під таким номером (кодом) в таблиці ASCII значиться символ «b». Значення символьного типу у програмах треба вказувати у дужках чи у апострофі залежно від правопису мови програмування. Для символьних величин виконуються операції порівняння. Більшою вважається та величина, код ASCIIякої є більшою. У звязку з тим, що літери в таблиці впорядковані за абеткою, то можна вказати, що ‘k’ більша за ‘a’.
Значеннями логічних величин є істина або хибність. Значеннями логічних величин можуть бути логічні вирази: “Зараз іде дощ”; “x>y”; ’22 + 3 = 5” і т.і. У мовах програмування значення логічних величин позначають: у мові Pascal true або false, у мові С 1 або 0. Значення логічного типу займають один біт пам’яті. В нього записується одиниця, якщо значення величини істина та нуль у протилежному випадку.
Логічні величини можуть бути простими та складеними. Прості вирази:
a=“Зараз іде дощ”;
k=”виє вітер”
b= “x>y”;
c=“н>0”
Складені вирази:
z=“Зараз іде дощ та виє вітер”
t=“x>y або y>0”.
Для створення складених логічних величин використовують логічні операції:
бінарні операції
(І)
(АБО)
XOR (виняткове АБО)
унарна операція
(НІ)
Таблиця 2.1. Таблиця істинності операцій І, АБО, виняткове АБО
x |
y |
x y |
x y |
x xor y |
false |
false |
false |
false |
false |
false |
true |
false |
true |
true |
true |
false |
false |
true |
true |
true |
true |
true |
true |
false |
Таблиця 2.2. Таблиця істинності операції НІ
x |
x |
false |
true |
true |
false |
Найвищий пріоритет у логічних операціях має операція логічного заперечення (), далі логічне множення (); останній пріоритет має логічне додавання ().
Розглянемо приклад виконання операцій над логічними величинами. Нехай x=5, y=-7. Тоді величина t=“x>y або y>0” приймає значення “істина або хибність” “істина”.