Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 3 демо.doc
Скачиваний:
6
Добавлен:
06.11.2018
Размер:
109.57 Кб
Скачать

Синтаксические диаграммы

Синтаксические диаграммы – наглядный способ изображения формул Бэкуса-Наура.

Понятие языка, определяемое диаграммой, указано в начале диаграммы

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

Лексемы заключаются в овалы

Нетерми­наль­ные символы - в прямоугольники.

Направление движения вдоль диаграм­мы (обхода) указы­вают стрелки, соединяющие объекты.

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

В синтаксически правильной программе все ее объекты удов­летворяют соответствующим диаграммам.

Синтаксические диаграммы использовались автором языка Паскаль Н. Виртом при его описании.

В заключение приведем определение блока как на языке Бэкуса-Наура, так и на языке синтаксических диаграмм.

<Блок> ::= [<Раздел меток>]

[ ; <Раздел констант ]

[ ; <Раздел типов>]

[ ; <Раздел переменных>]

[ ; <Раздел процедур и функций>]

<Раздел операторов>

Язык программирования Паскаль

Язык программирования Паскаль разработан известным швейцарским ученым и педагогом в области программирования Н.Виртом. Предварительное сооб­щение появилось в 1968 г. В 1971 году заработал первый компилятор пересмотренной версии, которая приобрела статус стандарта.

Первоначально Паскаль предназначался для учебных целей - для преподавания основ программирования студентам - будущим специалистам в области информатики. Очень быстро язык завоевал популярность не только в среде преподавателей и студентов, но и среди профессионалов благодаря своей компактности, гибкости, тщательной проработке концепции.

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

Алфавит языка

В языке используются:

1.Латинские буквы (большие и маленькие), знак подчеркивания ’_’

2.Цифры 0,...,9

3.Математические символы +, -, *, /, <, >, =

4.Разделители: ; , “ ‘ . : ^

5.Скобки ( ) [ ] { }

6.Другие символы (используемые для печати): буквы национальных алфавитов, !, ?, \, |, ...

В различных версиях могут использоваться различные наборы символов. Сейчас широко используется набор символов кода ASCII (American Standard Code for Information Interchange). Этот код предусматривает расширения для национальных алфавитов, символов псевдографики, которые могут меняться от версии к версии.

Данные

Данные есть общее понятие для всего того, с чем оперирует ЭВМ. Языки программирования позволяют нам абстрагироваться от деталей представления данных на машинном уровне прежде всего за счет введения понятия типа данных.

В языке Паскаль представляются числа и строки.

Целые числа записываются в десятичной системе счисления: 137, -56, +26 .

Вещественные числа используют также десятичную нотацию, причем целая часть отделяется от дробной не запятой, а точкой. Для обозначения порядка числа в качестве разделителя используется буква Е. Например, -5.1Е14 означает -5.1, умноженное на 10 в степени 14 (-5,1*1014). Степени чисел могут быть и отрицательными: 6.74Е-8, -56.89Е-10.

Последовательности символов, заключенные в одиночные кавычки, называются строками. Если в строку нужно включить кавычку, то вместо нее записывают две кавычки:

‘ строка из символов ‘, ‘ апостроф ‘’ в слове ‘

Имена

Именем в языке называется последовательность (латинских) букв, знака подчеркивания ‘_’ и цифр, начинающаяся с буквы либо со знака подчеркивания. Хотя имена могут быть сколь угодно длинными, в реализации количество значащих символов в имени может быть ограничено. В стандарте языка имена различаются по первым восьми символам. Это означает, что имена VeryLongNumber, VeryLongCardinal в стандарте языка обозначают (именуют) один и тот же объект. Кроме того, язык не различает больших и маленьких букв. Поэтому имена Sin, SIN, sin неразличимы.

Имена используются для обозначения программ, констант, типов, переменных, процедур и функций. Например:

Pi, Сonstant - имена констант; x, y1, y2, Counter - имена переменных;

Integral, MaxMin - имена процедур; Man, Color, WeekDay - имена типов;

Некоторые имена предопределены заранее. Например:

Sin - имя для обозначения функции синус; Read - имя для обозначения процедуры чтения;

Они называются стандартными. Все другие имена выбираются программистом по его усмотрению. Однако в целях улучшения читаемости программы рекомендуется выбирать имена, несущие информацию о поименованном объекте.

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