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

Языки программирования.

Языки программирования — это формальные языки для записи алгоритмов,специально созданные для общения человека с компьютером.

Приведем схему классификации языков программирования:

Машино-ориентированные

Рисунок 1.

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

Языки программирования, ориентированные на знание особенностей работы ЭВМ и команд процессора, называют языками низкого уровня (машинно-ориентированными).

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

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

Программы на языках высокого уровня(группы процедурно-, проблемно- и объектно- ориентированных)близки к естественному (английскому) языку.

· Процедурно-ориентированные языкиописывают процесс выполнения программ как совокупность процедур, называемых подпрограммами.

· Проблемно-ориентированные языкипрограммирования предназначались для решения определённого круга задач (обработка данных представленных в виде списков Lispи обработки логических данных Prolog, Simula ).

· Объектно-ориентированные языкипрограммирования объединяют процедуры и данные в одно целое, называемое классом. Каждый класс является моделью реального объекта, содержит данные, описывающие этот объект (свойства объекта), и разрешённые действия над этими данными в виде процедур обработки (методы объекта).

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

Большинство современных языков и систем программирования развивается в направлении все большего использования объектной методологии в создании программ. Наиболее популярные реализации объектного подхода созданы на основе языков программирования Pascal , Basic , C. Это, Delphi , Visual Basic , C++ .


 

Каждый язык программирования имеет алфавит, словарный запас, свои грамматику и синтаксис, а также семантику.

Алфавит - фиксированный для данного языка набор основных символов, допускаемых для составления текста программы на этом языке. Алфавит языка, как правило, связан с литерами клавиатуры ПК.

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

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

Несмотря на различия между языками программирования (ЯП), ряд фундаментальных понятий в большинстве из них схожи.

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

1. Оператор – одно из основных понятий практически всех ЯП. Каждый оператор представляет собой законченную фразу языка и определяет некоторый вполне законченный этап обработки данных.

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

2. Величина. Большая часть операторов ведет обработку данных.
Данные – величины, обрабатываемые программой. Величина может быть постоянной (константа) и переменной. Величина характеризуется типом, именемизначением. Наиболее распространенные типы величин – числовые (целые и вещественные), символьные, логические. Ещё одна важная классификация величин – простые и структурированные. Простая величина в каждый момент времени может иметь не более одного значения. Структурированная величина, имея одно имя, может иметь одновременно несколько значений. Эти значения представляют собой элементы (компоненты) величины. Пример структурированной величины – массив или таблица.

3. Переменная – это программный объект, способный принимать некоторое значение с помощью оператора присваивания и меняющий свое значение при выполнении программы. Каждая переменная после ее описания отождествляется с некоторой ячейкой памяти, содержимое которой является ее значением, соответствующего описанию типа.

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

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

5. Процедура – это программный объект, представляющий некоторый самостоятельный этап обработки данных.

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

6. Идентификатор. Идентификатор– последовательность букв и цифр, начинающаяся с буквы, и служащая для задания имен программным объектам.

7. Описания (или объявления) программных объектов.

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

В некоторых ЯП для описания стандартных данных (например, целые величины) используется правило “по умолчанию”, или в них задаются правила описания по имени объекта. Особое значение представляют в ЯП описания нестандартных структур данных, таких как запись, файл, объект, список, дерево и т.п.

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

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

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

Логические выражения описывают некоторые условия, которые могут удовлетворяться или не удовлетворяться. Таким образом, логическое выражение может принимать только два значения — "истина" или "ложь".

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

9. Модуль – это специальная программная единица, предназначенная для создания библиотек и разделения больших программ на логически связанные блоки.

Трансляция программ

Программа, подготовленная на ЯП, проходит этап трансляции.