Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatica / lin.doc
Скачиваний:
98
Добавлен:
09.04.2015
Размер:
776.19 Кб
Скачать

Стандарт и диалекты языка

Для возможности широкого обмена алгоритмами, записанными на данном алгоритмическом языке, и обеспечения их однозначного понимания приняты международные стандарты языка. Однако на прак­тике используется несколько различных версий, или «диалектов» языка.

Версия, в которой по сравнению со стандартом исключены неко­торые возможности, называется подмножеством эталонного языка, или его сужением. Включение дополнительных возможностей приводит к по­явлению версии, называемойрасширением эталонного языка. Реали­зация языка обычно является одновременно расширением и сужением стандарта.

Мы будем изучать Object Pascal.

Основы Паскаля

В основе алгоритмических языков лежит формульно-словесный способ записи алгоритмов. Алгоритмический язык (как и любой другой) образуют три его составляющие: алфавит,синтаксисисемантика.

Алфавит– это фиксированный для данного языка набор основных символов,т.е. «букв алфавита»,из которых должен состоять текст на этом языке – другие символы в тексте не допускаются.

Синтаксисэто система правил, определяющих допустимые конструкции из символов алфавита. С помощью этих конструкций представляются записанный на данном языке алгоритм в целом и его отдельные компоненты. Таким образом, для каждой последовательности символов синтаксис позволяет ответить на вопрос: может ли она являться текстом на данном языке.

Семантика это система правил истолкования языковых конструкций, позволяющиходнозначно воспроизвести процесс обработки заданных исходных данных по заданной программе.

При описании языка и при построении алгоритмов используются определенные понятия языка. Каждое понятие алгоритмического языка подразумевает некоторую синтаксическую единицу (конструкцию) и оп­ределяемые ею свойства программных объектов или процесса обработки данных, т.е. понятие определяется во взаимодействии синтаксических и семантических правил. Синтаксические правила показывают, как образу­ется данное понятие из других понятий и (или) символов алфавита, а семантические правила определяют свойства данного понятия в зависи­мости от свойств, используемых в нем понятий.

Запись текста на алгоритмическом языке представляет собой строго линейную последовательность символов, т.е. не допускается ис­пользование верхних и нижних индексов, обыкновенных дробей и т.п.

Для того, чтобы определить (описать) синтаксис алгоритмичес­кого языка, так же необходим какой-то язык, т.е. речь идет о метаязыке(«надязыке»), предназначенном для описания других языков. Наиболее распространенными являютсяметалингвистические формулы Бэкуса-Наура (язык БНФ)и синтаксические диаграммы. На языке БНФ синтак­сис языка программирования описывается достаточно компактно и совершенно строго в виде формул, весьма похожих на математические.

В металингвистических формулах все понятия заключаются в угловые скобки «<» и «>». Кроме того используются спецсимволы:

«::=» – «по определению есть»;

«|» – либо, или;

«{» и «}» - задает повторение любое число раз.

Для каждого понятия языка должна существовать единственная метаформула, в левой части которой указывается определяемое понятие, т.е. метапеременная языка БНФ, а правая часть формулы тем или иным способом задает все множество значений этой метапеременной, т.е. все допустимые конструкции, которые объединяются в это понятие.

Например, консрукция <переменная>::=A|B– означает, что под термином переменная понимается любая из букв A или B.

Соседние файлы в папке Informatica