Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конструирование программ.doc
Скачиваний:
12
Добавлен:
05.05.2019
Размер:
12.37 Mб
Скачать

1.2 Основные объекты языка программирования

1.2.1 Синтаксические элементы языка программирования

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

Синтаксическое правило может быть записано как в текстовом представлении (например, нормальная форма Бэкуса – НФБ), так и в графическом (например, синтаксический граф). И в том и в другом случае для задания правила используются терминальные символы, определенные в языке программирования, и нетерминальные, вспомогательные символы (заключаются в угловые скобки – < >).

Пример НФБ:

<цифра>::= 0 1 2 3 4 5 6 7 8 9

Это правило читается: "Цифра по определению есть 0 или 1 или 2 или … или 9". Символы этого правила:

<цифра> – нетерминальный символ;

::= – операция "по определению есть";

0, 1, 2, 3, 4, 5, 6, 7, 8, 9 – терминальные символы;

операция "или".

Данное правило определяет, что в языке допустимыми – правильными – являются только десять арабских цифр (от 0 до 9).

К синтаксическим элементам языка программирования обычно относят следующие:

  • Набор символов – буквы и цифры (например, символы ASCII, американского стандарта обмена информацией), а также ряд специальных символов

  • Идентификаторы – имена объектов языка (типов, констант, переменных и других). Идентификатор состоит из последовательности букв и цифр, которая начинается с буквы

  • Символы (знаки) операций, ограничители и скобки – например, символы арифметических и логических операций (+, -, /, *, not, and, or и другие); символы операций отношения (<>, =, >= и другие); круглые скобки () и операторные скобки beginend – парные ограничители; ограничитель операторов – символ ;

  • Ключевые слова – идентификаторы, используемые в качестве фиксированной части синтаксиса какой-либо конструкции языка (например, слово if служит началом условного оператора)

  • Выражения – конструкции языка для вычисления и изменения значений. Выражения включают символы операций и операнды (константы, переменные и другие объекты языка)

  • Операторы – конструкции языка, необходимые для управления порядком действий по обработке информации. Самые важные синтаксические компоненты языка

  • Комментарии – пояснения, включаемые в текст программы, но не обрабатываемые компилятором.

Комментарии заключаются в фигурные скобки:

{ текст в фигурных скобках – это комментарии }

Если комментарии располагаются только на одной строке, то их можно обозначать так:

// – комментарии на одной строке

1.2.2. Значения и типы

Цель программы состоит в вычислении значений.

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

Компьютер оперирует с физическими представлениями значений, которыми являются совокупности битов, байтов или слов оперативной памяти (множества D' и R'на рисунке 1.1).

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

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

Тип определяет физическое представление данных, а также множество допустимых значений и операций над ними.

Например, тип Word (слово) определяет целые значения без знака, которые занимают в памяти 2 байта. Допустимые значения такого типа лежат в диапазоне от 0 до 65535.

Тип в языке Object Pascal может определяться программистом:

type

<имя типа> = <описание типа>

Пример:

type

Boolean = (false, true); {данные этого типа могут принимать только

два значения: false – 0 и true – 1}

Простые типы языка Object Pascal приведены в таблице 1.1.

Таблица 1.1 Простые типы языка Object Pascal

Тип

данных

Интервал

допустимых значений

Целый:

Byte

Word

Cardinal

ShortInt

SmallInt

Integer

Int64

0 .. 255

0 .. 65535

0 .. 4294967295

128 .. 127

32768 .. 32767

2147483648 .. 2147483647

263.. 263 1

Вещественный:

Real48

Real

Single

Extended

±2.9*10-39 .. ±1.7*1038

±5.0*10-324 .. ±3.4*10308

±1.5*10-45 .. ±3.4*1038

±3.6*10-4932 .. ±1.1*104392

Логический:

Boolean

false, true

Символьный:

Char

ANSIChar

WideChar

Эквивалентен ANSIChar

Символ ASCII (1 байт)

Символ Unicode (2 байта)