Upload
olaf
View
100
Download
3
Embed Size (px)
DESCRIPTION
Мова програмування Pascal. Алфавіт. Поняття величини. Типи даних. Складові мови. Алфавіт – набір дозволених до використання символів Синтаксис – правила оформлення конструкцій мови (опис типів даних, команди, функції, програми) Семантика (зміст) – правила розуміння конструкцій мови. - PowerPoint PPT Presentation
Citation preview
Алфавіт. Поняття величини. Типи даних.
1.1. АлфавітАлфавіт – набір дозволених до використання символів
2.2. СинтаксисСинтаксис – правила оформлення конструкцій мови (опис типів даних, команди, функції, програми)
3.3. СемантикаСемантика (зміст) – правила розуміння конструкцій мови
Символи – основні нероздільні знаки, за допомогою яких описуються програми та дані
Слово – послідовність символів з алфавіту мови програмування, яка має певний зміст
Вирази Команди
Латинські букви (регістр не розпізнається) A-Z, a-z
Знак підкреслювання _ (відноситься до букв)
Арабські цифри 0-9 Спеціальні символи (прості або
складені). Прості символи: ; : , . (“розділові” знаки), < > = (символи порівняння)
$ ’ # (керуючий символ) Приклад: #7 – біп, #32 – пробіл Складений символ: послідовність
символів, яка несе певний зміст
Символи порівняння <=, >=, <> Присвоєння := ‘7‘ – позначення символів на відміну від
чисел Діапазон .. 1..10 ‘a’..’z’ // рядковий коментар /* багаторядковий коментар */ (* … *) { … }
( ) – використовується для запису аргументів функції, для перерахування списку вводу-виводу.
[ ] – використовується в массивах { } – для запису коментарів
1. Зарезервовані (службові) - слова, значення яких міняти не можна
2. Стандартні - значення їх визначене, але програміст може його змінити
3. Імена (ідентифікатори) - слова, які встановлює програміст
1. Службові: Program, begin, end, if, for,сonst, var, function, procedure 2. Стандартні: sin, cos, Pi, integer, real 3. Ідентифікатори (імена програміста):
A1, c, x, min.
Це послідовність букв, цифр та _, яка починається з букви. Може бути до 63 символів.
Приклади правильних імен Неправильні A Л
R21 21R CO COSX[10] X{10}TOR TO X_1 X 1 N25 #25 Case_1 Case
В математиці: позначається буквою або числом
З точки зору програміста: величина - модель фізичного або математичного об’єкта
З точки зору комп’ютера: величина - іменоване місце в пам’яті
1. Розмір місця в оперативній пам’яті в байтах
2. Множина значень3. Множина операцій
Тип величини задає всі 3 характеристики
Числові (цілі – знакові та беззнакові; дійсні)
Символьні Логічні
ВеличиниВеличини можуть бути:
КОНСТАНТАМИКОНСТАНТАМИ (значення не міняється в процесі виконання програми)ЗМІННИМИЗМІННИМИ (величина може змінювати своє значення) Опис констант:const
<ім’я константи 1>=<значення 1>; <ім’я константи 2>=<значення 2>;
Прикладconst
max=1000;school=‘Liceum 145’;
var <ідентифікатор1>:<тип змінної 1>;
<ідентифікатор2>:<тип змінної 2>;Тип змінної – це множина значень, які може мати змінна та набір операцій, які можна застосувати до змінної.
Прикладvar
x: integer;a, b: real;f: text;sum: byte;
Довжина Назва Діапазон значень
1 byte 0 - 2552 word 0 – 655354 longword 0 - 109
8 uint64 0 – 1019
Довжина Назва Діапазон значень
1 shortint -128 .. 1282 integer -32768 .. 32767
4 longint -2*108 .. 2*108
8 int64 –1018 .. 1018
Бінарні: + - */div-цілочисленне ділення 10 div 3=3mod – залишок від цілочисленного ділення10 mod 3=1
8*(10-6**6)
Shl – зсув вліво Shr - зсув вправоx shl n=x*2n - цілочисленне множенняx shr n=x/2n – цілочисленне ділення!
Унарні операції –X, +X Функція odd(x) – визначає непарність числа (false або true)Функція abs(x) – модуль числаФункція sqr(x) – квадрат числа
Довжина
Назва Діапазон значень
6 real 2,9*10-39 .. 2,9*1038
4 single 1,5*10-45..3,48*1038
8 double 5*10-324..1.1*10308
10 extended 3,4*10-4932 .. 1,1*104932
Функція Значення Тип результату
Abs(X) Модуль Співпадає з типом X
Arctan(X) Арктангенс Дійсний
Cos(X) Косінус Дійсний
Ехр(Х) еx Дійсний
Frac(X) Дробова частина числа Дійсний
Int(X) Ціла частина числа Дійсний
Trunc(x) Ціла частина числа Цілий
PiPi=3.1415926535897932385
Sin(X) Сінус аргумента Дійсний
Sqr(X) Квадрат аргумента Співпадає з типом X
Sqrt(X)Квадратний корінь аргумента
Дійсний
tgx
boolean – 1 байт (TRUE, FALSE)
A B NOT A
A OR B
A AND B
A XOR B
0 0 1 0 0 0
0 1 1 1 0 1
1 0 0 1 0 1
1 1 0 1 1 0
Операція «порядковий номер» для логічного типу: FALSE<TRUE, отже
ORD(FALSE)=0 ORD(TRUE)=1
S: CHAR; – 1 байт, діапазон значень – кодова таблиця ASCII (1-31- керуючі символи, пробіл – 32 символ; всього 256 значень). Операції над символами:
ORD (‘A’)=65 CHR (65)=‘A’
S: String; символьна строка, 255 байт (256 – перший байт містить довжину)
S: String(40);
До множини операцій входять: всі операції порівняння (відповідно порядковим номерам в ASCII таблиці):‘ ‘<‘_’<‘0’<‘1’<…<‘9’<‘A’<‘B’<…<‘Z’<‘a’…Операція конкатенації + (поєднання символів)‘1’+’2’=‘12’‘A’+’B’=‘AB’
Довжина Назва Діапазон
1 байт, без знаку
Byte 0-255
2 байта, без знаку
Word 0-65 535
4 байта, без знаку
Longword 0 .. 4 294 967 295
1 байт, знакове Shortint -128-127
2 байта, знакове
Smallint (DELPHI)
-32768 .. 32767
4 байта, знакове
Longint -2*108 .. 2*108
8 байт Int64 (DELPHI) –1018 .. 1018
Sizeof(byte)=1;Sizeof(longint)=4;Sizeof(boolean)=1
Результат операції / - завжди дійсний12/3*3<>12 Тип результату операцій із декількома
типами співпадає з найбільшим типом
Vara:real;b:byte;
a+b – результат дійсний: 1+1.0=2.0
1+0.0; 10/5; 12-13; Sin(0); 4 Int(9.5); trunc(9.5); frac(9.5); odd(9)
1)X-Y, якщо x - ціле, y - дійсне 2)(X+y)/10, якщо x, y- цілі 3)sin(x)*cos(y), якщо x - ціле, y - дійсне 4)(x+y)*(y-2), якщо x, y- цілі
компіляторІм’я змінної
Адреса пам’яті
Змінна (значення у пам’яті)
програма
Код Символ Код Символ Код Символ Код Символ
32 пробел 56 8 80 P 104 H
33 ! 57 9 81 Q 105 I
34 “ 58 : 82 R 106 J
35 # 59 ; 83 S 107 K
36 $ 60 < 84 T 108 L
37 % 61 = 85 U 109 m
38 & 62 > 86 V 110 n
39 ' 63 ? 87 W 111 o
40 ( 64 @ 88 X 112 p
41 ) 65 A 89 Y 113 q
42 * 66 B 90 Z 114 r
43 + 67 C 91 [ 115 s
44 , 68 D 92 \ 116 t
45 - 69 E 93 ] 117 u
46 . 70 F 94 ^ 118 v
47 / 71 G 95 _ 119 w
48 0 72 H 96 ` 120 x
49 1 73 I 97 A 121 y
50 2 74 J 98 b 122 z
51 3 75 K 99 c 123 {
52 4 76 L 100 d 124 |
53 5 77 M 101 e 125 }
54 6 78 N 102 f 126 ~
55 7 79 O 103 g 127
Фрагмент таблиці ASCII