Similar presentations:
Pascal. Реализации языка Pascal
1. Pascal
ETH Pascal, Turbo Pascal, Borland Pascal, Delphi, ObjectPascal, PascalABC.NET
2. Реализации языка Pascal
• ETH Pascal – Никлаус Вирт, 1970 г.• Turbo (Borland) Pascal - Андерс Хейлсберг, 1983 г.
• Delphi (Object Pascal) - Андерс Хейлсберг, 1996 г.
• Free Pascal / Lazarus
• Pascal ABC.NET - разработка ведется
коллективом кафедры алгебры и дискретной
математики факультета математики, механики
и компьютерных наук ЮФУ, 2006 г.
3. Алфавит и лексика
Общая структура программы4. Алфавит и лексика
Алфавитo a, b, ..., z и A, B, ..., Z, символ подчеркивания "_"
o цифры от 0 до 9
o +-*/=<>[].,():;^@{}$#‘
Лексический состав языка
o ключевые слова;
o идентификаторы;
o изображения (неименованные константы);
o знаки операций;
o разделители;
o комментарии;
o директивы компилятора.
5. Ключевые слова
(служебные или зарезервированные слова)and array as auto begin case class const constructor destructor div
do downto else end event except extensionmethod file finalization
finally for foreach function goto if implementation in inherited
initialization interface is label lock mod nil not of operator or
procedure program property raise record repeat sealed set sequence shl
shr sizeof template then to try type typeof until uses using var
where while with xor
• используются для оформления конструкций
языка;
• не могут использоваться как идентификаторы.
6. Идентификаторы
Правила построения:o первым символом должна быть буква;
o не должны совпадать с ключевыми словами;
x, a2, m_1
1x, begin, ж
mass, alpha, button, number
так лучше, чем
m, a, b, n
7. Общая структура программы
program <имя программы>;uses <список подключаемых модулей>;
label <список меток>;
const <список констант>;
type <описание типов>;
program Example;
var <описание переменных>; var
a,b : integer;
<описание процедур>;
x : real;
begin
<описание функций>;
readln(a,b);
begin
x := a/b;
writeln(x);
<операторы>;
end.
end.
8. Комментарии
{ Этокомментарий }
(* Это
тоже комментарий *)
var
n : integer; // Количество итераций
sum := 0;
for k := 1 to 100 do begin
read(x);
//
if x<0 then x := 0;
sum := sum + x;
end;
9. Типы данных
Классификация, характеристики, изображения10. Что определяет тип данных?
Множествозначений
Множество
операций
Способ
хранения в
памяти
11.
Типы данныхЦелочисленные
Порядковые
Простые
Логический
Символьный
Вещественные
Строковый
Структурные
Массив
Файловые
Запись
Процедурные
Множество
Класс
12. Целочисленные типы / Integer Types
ТипДиапазон значений
Размер, байт
byte
0 … 255
1
shortint
-128 … 127
1
word
0 … 65535
2
integer
-32768 ... 32767
2
longint
-2147483648 ... 2147483647
4
int64
-9223372036854775808 … 9223372036854775807
8
123
$01AF
+
-
десятичный формат
-12
$FFFF
*
шестнадцатеричный формат
$1A
div
10.0
mod
>
<
=
<>
13. Вещественные типы / Floating Types
ТипДиапазон значений
Количество
значащих цифр
Размер, байт
real
-1.7∙10308 .. 1.7∙10308
15-16
8
single
-3.4∙1038 .. 3.4∙1038
7-8
4
double
-1.7∙10308 .. 1.7∙10308
15-16
8
extended
-1.1∙104932 .. 1.1∙104932
19-20
10
123.0
0.0012
1.23E2
+
1.2E-3
-
*
формат с фиксированной точкой
-34.781
формат с плавающей точкой
-3.4781E1
/
>
<
=
<>
14. Вещественные типы / Floating Types
Значащие цифры:23.1240
Формат с плавающей точкой: