Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Алфавит, синтаксис, семантика языка программирования.




Алфавитом языка называется совокупность символов, используемых в языке. Язык C различают, в отличие от многих других языков прграммирования, прописные и строчные буквы.

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

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

12) Алфавит языка С++. Служебные слова языка С++.

Прописные и строчные буквы латинского алфавита;

2. Цифры от 0 до 9;

3. Спецзнаки (-, /,., [], (), +, -) и др.;

4. В комментариях, строках и символьных константах могут использоваться русские буквы.

Комментарий формируется как последовательность знаков ограниченных слева символами /*, а справа */. Комментарий может отделяться слева символом // (в этом случае комментарий может быть записан только в одну строку).

Пример:

/* Курсивом я пишу комментарий к программе в Си он может быть написан в несколько строк */

// или в одну строку, после двух черточек. Курсив взят условно, для лучшей усвояемости.

// Курсив взят условно, для лучшей усвояемости.

 

Идентификатор – это последовательность букв, цифр и символов подчеркивания, которые начинаются с буквы или символа подчеркивания.

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

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

Примеры служебных слов:

- double

- goto

- void

 

Алфавит C++ включает:

  • прописные и строчные латинские буквы и знак подчеркивания;
  • арабские цифры от 0 до 9;
  • специальные знаки:? { }, ¦ [ ] () + — / % *. \ ‘:? < = >! & # ~ —; ^
  • пробельные символы: пробел, символы табуляции, символы перехода на новую строку.

Из символов алфавита формируются лексемы языка:

  • идентификаторы;
  • ключевые (зарезервированные) слова;
  • знаки операций;
  • константы;
  • разделители (скобки, точка, запятая, пробельные символы).

Границы лексем определяются другими лексемами, такими, как разделители или знаки операций.

 

13) Правила создания идентификаторов. Структура программы на языке С++.

Идентификатор — это имя программного объекта. В идентификаторе могут использоваться латинские буквы, цифры и знак подчеркивания. Прописные и строчные буквы различаются, например, sysop, SySoP и SYSOP — три различных имени. Первым символом идентификатора может быть буква или знак подчеркивания, но не цифра. Пробелы внутри имен не допускаются.

 

  1. Первым символом идентификатора C++ может быть только буква.
  2. Следующими символами идентификатора могут быть буквы, буквы-цифры и буквы-подчерки.
  3. Длина идентификатора неограниченна (фактически же длина зависит от реализации системы программирования).

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

 

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

  • идентификатор не должен совпадать с ключевыми словами и именами используемых стандартных объектов языка;
  • не рекомендуется начинать идентификаторы с символа подчеркивания, поскольку они могут совпасть с именами системных функций или переменных, и, кроме того, это снижает мобильность программы;
  • на идентификаторы, используемые для определения внешних переменных, налагаются ограничения компоновщика (использование различных компоновщиков или версий компоновщика накладывает разные требования на имена внешних переменных).

Константы, переменные, их типы.

Константами называют неизменяемые величины. Различаются целые, вещественные, символьные и строковые константы. Компилятор, выделив константу в качестве лексемы, относит ее к одному из типов по ее внешнему виду (формат константы можно указать самостоятельно).

Целые константы.

Согласно правилам языка Си, число без десятичной точки и без показателя степени рассматривается как целое. Поэтому компилятор по записи константы определяет, целая она или вещественная. Если нужно ввести константу типа long, то нужно указать признак L или l в конце числа. Если при записи константы целое начинается с цифры 0, то эта константа интерпретируется как восьмеричное число, если же целое начинается с символа 0x или 0X - как шестнадцатеричное число.

 

 

Переменная — это «ячейка» оперативной памяти компьютера, в которой может храниться какая-либо информация. В программировании переменная, как и в математике, может иметь название, состоящее из одной латинской буквы, но также может состоять из нескольких символов, целого слова или нескольких слов.

 

Типы данных

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

Тип данных присваивается переменной при ее объявлении или инициализации. Ниже приведены основные типы данных языка C++, которые нам понадобятся.

Основные типы данных в C++

  • int — целочисленный тип данных.
  • float — тип данных с плавающей запятой.
  • double — тип данных с плавающей запятой двойной точности.
  • char — символьный тип данных.
  • bool — логический тип данных.

Объявление переменной

Объявление переменной в C++ происходит таким образом: сначала указывается тип данных для этой переменной а затем название этой переменной.

15) Операции, операнды, выражения в языке С++.

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

Если в качестве операнда используется константа, то ему соответствует значение и тип представляющей его константы. Целая константа может быть типа int, long, unsigned int, unsigned long, в зависимости от ее значения и от формы записи. Символьная константа имеет тип int. Константа с плавающей точкой всегда имеет тип double.

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

Операция - это действие, производимое над операндами.

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

Над объектами в языке Си могут выполняться различные операции:

  • операции присваивания;
  • операции отношения;
  • арифметические;
  • логические;
  • cдвиговые операции.

Результатом выполнения операции является число.

Операция присваивания

Операция присваивания обозначается символом = и выполняется в 2 этапа:

  • вычисляется выражение в правой части;
  • результат присваивается операнду, стоящему в левой части:

объект = выражение;

Пример:

int a = 4; // переменной a присваивается значение 4
int b;
b = a + 2; // переменной b присваивается значение 6,

// вычисленное в правой части

Операции отношения

Основные операции отношения:

  • == эквивалентно — проверка на равенство;
  • != не равно — проверка на неравенство;
  • < меньше;
  • > больше;
  • <= меньше или равно;
  • >= больше или равно.

Арифметические операции

Основные бинарные операции, расположенные в порядке уменьшения приоритета:

  • умножение *;
  • деление /;
  • сложение +;
  • вычитание -;
  • остаток от целочисленного деления %.

Основные унарные операции:

  • инкрементирование (увеличение на 1) ++;
  • декрементирование (уменьшение на 1) --;
  • изменение знака -.

Основные условные логические операции:

  • && - И (бинарная) — требуется одновременное выполнение всех операций отношения;
  • || - ИЛИ (бинарная) — требуется выполнение хотя бы одной операции отношения;
  • ! - НЕ (унарная) — требуется невыполнение операции отношения.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...