Язык программирования TurboPascal
- Григоренко Г. Н.
- Просмотров: 16122
Turbo Pascal. Основные понятия и элементы языка
Первая версия языка программирования Паскаль была разработана на кафедре информатики Стэнфордского университета швейцарским ученым Никласом Виртом в 1968 году. Предложенный им язык назван в честь французского ученого Блеза Паскаля, который изобрел первую в мире вычислительную машину. Язык Паскаль создавался как средство для обучения студентов программированию.
В 1979 году был утвержден международный стандарт языка Паскаль. Дальнейшее развитие языка Паскаль связано с американской корпорацией Borland International. На основе стандартного языка Паскаль была разработана система программирования Турбо Паскаль. С этого момента язык Турбо Паскаль становится одним из наиболее важных и широко используемых языков программирования. Сегодня Турбо Паскаль не только профессиональная система программирования, но и классический язык обучения студентов основам программирования.
Основные понятия и элементы языка
Состав языка
В тексте на любом языке можно выделить четыре основных элемента: символы, слова, словосочетания, предложения. Аналогичные элементы содержит и алгоритмический язык Паскаль, только слова называются – лексемами, словосочетания – выражениями, а предложения – операторами. Лексемы образуются из символов, выражения – из лексем, а операторы – из символов, лексем и выражений.
- алфавит языка – это элементарные знаки, используемые для составления любых текстов;
- лексема (слово) – это минимальная единица языка, имеющая самостоятельный смысл;
- выражение задает правило вычисления некоторого значения;
- оператор задает законченное описание некоторого действия.
Алфавит языка
Алфавит языка Турбо Паскаль включает:
- прописные и строчные буквы латинского языка, а также знак подчеркивания;
- арабские цифры от 0 до 9;
- специальные символы, выполняющие определенные функции при построении выражений и операторов:
+ |
- |
* |
/ |
{} |
[] |
< |
> |
: |
; |
‘ |
“ |
# |
= |
@ |
$ |
а также символы, которые записываются как единое целое:
<= |
>= |
:= |
(* |
*) |
.. |
Каждому символу алфавита соответствует индивидуальный числовой код от 0 до 255. Символы с кодами от 0 до 127 образуют основную таблицу ASCII. Их состав и порядок определены международным стандартом. Символы с кодами от 128 до 255 образуют расширенную таблицу кодов ASCII. В ней находятся символы национального языка (для России – русского языка), символы псевдографики, а также некоторые другие символы, которые не входят в алфавит языка.
Из символов алфавита формируются лексемы языка:
- идентификаторы;
- зарезервированные слова;
- знаки операций;
- константы;
- разделители.
Идентификаторы
В Турбо Паскале применяется очень гибкая и наглядная система обозначения объектов программы (переменных, констант и т.д.), которая опирается на понятие идентификатора.
Идентификатор – это имя объекта в программе. Например, идентификатор переменной – это имя, данное переменной автором программы. Так, в записи a+b*x буквы a,b,x – идентификаторы, выбранные для обозначения некоторых переменных в программе.
Различают два типа идентификаторов: стандартные и задаваемые пользователем. Стандартные идентификаторы определены в языке для обозначения стандартных программ, функций и т.д. В качестве примера стандартной программы можно привести программу ввода данных, которая имеет имя Read и программу вывода данных, имеющую имя Write.
Идентификаторы, определяемые пользователем, должны удовлетворять следующим правилам написания:
- идентификатор всегда начинается с буквы или знака подчеркивания, затем могут следовать буквы и цифры;
- пробелы и специальные символы не допустимы в составе идентификатора;
- не допускается использование стандартных идентификаторов и зарезервированных слов;
- идентификаторы могут иметь произвольную длину, но значащими являются только первые 63 символа;
- прописные и строчные буквы не различаются;
- в идентификаторе недопустимо использовать кириллицу;
- каждый идентификатор в программе должен быть уникальным.
Нужно обратить особое внимание на то, что идентификатор в программе имеет тот и только тот смысл, который дан ему автором программы. Для улучшения читаемости программы следует объектам давать осмысленные имена. Неудачные имена часто являются источником проблем.
Примеры идентификаторов:
x, i, z, znak, x1, y1, flag, dy, _dat и т.д.
Примеры неправильных идентификаторов:
4a | {начинается с цифры} |
a-b | {содержит специальный символ -} |
A#1 | {содержит специальный символ #} |
Sin | {стандартное имя функции} |
My prog | {содержит пробел} |
@w | {начинается недопустимым символом @} |
Begin | {зарезервированное слово языка} |
Зарезервированные слова
Зарезервированные слова имеют специальное значение для компилятора. Зарезервированные слова можно использовать только в том смысле, в котором они определены. В качестве пользовательских идентификаторов зарезервированные слова использоваться не могут. Смысл и правила использования зарезервированных слов будет поясняться по мере необходимости.
В Турбо Паскале зарезервированы следующие слова:
And |
And |
Nil |
Shr |
Asm |
File |
Not |
String |
Array |
For |
Object |
Then |
Begin |
Function |
Of |
To |
Case |
Goto |
Or |
Type |
Const |
If |
Packed |
Unit |
Constructor |
Implementation |
Procedure |
Until |
Destructor |
In |
Program |
Uses |
Div |
Inline |
Record |
Var |
Do |
Interface |
Repeat |
While |
Downto |
Label |
Set |
With |
Else |
Mod |
Shl |
Xor |
Знаки операций
Знаки операций предназначены для обозначения арифметических, логических и других действий. Наиболее часто используемые знаки операций приведены в таблице:
Операция |
Краткое описание |
+ |
Сложение |
- |
Вычитание |
* |
Умножение |
/ |
Деление |
:= |
Присвоение |
= |
Равно |
<> |
не равно |
> |
Больше |
< |
Меньше |
>= |
больше или равно |
<= |
меньше или равно |
div |
целочисленное деление |
mod |
остаток от целочисленного деления |
and |
логическое И |
or |
логическое ИЛИ |
not |
логическое отрицание НЕ |
Разделители
Разделители используются для отделения друг от друга идентификаторов, чисел, зарезервированных слов. В качестве разделителей можно использовать:
- пробел;
- управляющие символы (имеют ASCII-коды от 0 до 31). Например, управляющие символы с ASCII-кодом: нажатие клавиши Tab имеет код 9, нажатие клавиши Enter – код 13, используются программистом в качестве разделителей при написании программ;
- комментарии. Они имеют очень важное значение. Комментарии предназначены для описания (пояснения) назначения типов, переменных, отдельных блоков программы и т.д. В комментариях указывается вся та информация, которая необходима другим пользователям, а часто и самому автору программы, чтобы вспомнить логику работы программы. Не зря говорят «Проще написать свою программу, чем разобраться в чужой». Разбираться через некоторое время в своей плохо документированной программе – сомнительное удовольствие.
Во время компиляции программы все комментарии, за исключением директив самого компилятора, игнорируются и не влияют на работу программы.
Комментарий – произвольный текст, заключенный в фигурные скобки { }, либо в скобки типа (* *).
Примеры комментариев:
{Последовательность символов в фигурных скобках, независимо
от того, сколько строк она занимает - это комментарий.
Необходимо строго следить за парностью скобок!}.
(*это комментарий.*)
В любом месте программы, где можно поместить один пробел или управляющий символ, можно поместить любое их количество. Это позволяет наглядно структурировать программу.