Файл: Классификация языков программирования высокого уровня(Общие понятия языков программирования).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 01.04.2023

Просмотров: 279

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Введение

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

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

Любой язык программирования выполняет сразу две цели[6]:

  1. Служит программисту аппаратом, позволяющий задавать действия, которые нужно выполнить.
  2. Формирует определенные концепции для использования программистом, определяя последующие действия.

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

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

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

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

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

Задачи:

  1. Дать основные понятия, что представляют собой языки программирования.
  2. Классифицировать языки программирования по типам.
  3. Дать сравнительный анализ языков программирования.

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

Глава 1.Основные понятия об языках программирования

1.1. Общие понятия языков программирования

Язык программирования [7]– формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например компьютера). Язык программирования [13] определяет набор лексических, синтаксических и семантических правил, используемых при составлении компьютерной программы. Он позволяет программисту точно определить то, на какие события будет реагировать компьютер, как будут храниться и передаваться данные, а также какие именно действия следует выполнять над этими при различных обстоятельствах.

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

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

Разработчики языков программирования по разному смотрят на данное понятие. Большинство разработчиков сходятся на следующих понятиях [9]:

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

Задача:язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека компьютеру, в то время как естественные языки используются лишь для общения людей между собой. В принципе, можно обобщить определение «языков программирования»– это способ передачи команд, приказов, чёткого руководства к действию; тогда как человеческие языки служат также для обмена информацией.


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

1.2. Назначение языков программирования

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

Команда, выполняемая машиной [17],состоит из 0 и 1. А это, в свою очередь, дает указание центральному процессору выполнить определенную задачу. Соответственно, для того, чтобы компьютер понял, какую последовательность действий необходимо сделать, необходимо указать ту последовательность действий, состоящих из двоичного кода, которые соответствуют определенным командам.

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

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

Всё множество языков программирования можно разделить на две группы:языки низкого уровняиязыки высокого уровня [15].

К языкам низкого уровня относятся ассемблер [11],в котором используются символьные обозначения команд. Они вполне понятны и быстро запоминаются. Последовательность двоичных кодов записывается символьным обозначением, двоичные адреса данных представлены символьными именами данных, которые выбираются программистом. Иногда язык ассемблера называют мнемокодом или автокодом.

Однако подавляющее число программистов в своей работе используют языки высокого уровня [10]. Любой представитель данного вида имеет свой алфавит, который представлен множествами символов, из которых состоит язык. Данные символы выстраиваются в слова, которые называются ключевыми для данного языка. Каждое ключевое слово несет свою смысловую нагрузку, так же, как и в естественном языке – за каждым словом стоит свое понятие и смысл. Связка из ключевых слов представляет собой предложение, которое составляется по определенным правилам данного языка. Предложения говорят о том, какую последовательность команд необходимо выполнить машине.


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

Перед тем как писать программу на языке высокого уровня, программист должен составитьалгоритмрешения задачи [8], то есть пошаговый план действий, который нужно выполнить для решения этой задачи. Поэтому языки, требующие предварительного составления алгоритма, часто называют алгоритмическими языками.

1.3. Что такое компилятор и интерпретатор

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

Транслятор [5]– это программа, предназначенная для перевода программы, написанной на одном языке программирования, в программу на другом языке программирования. Процесс перевода называетсятрансляцией.

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

Примером транслятора является компилятор.

Компилятор [5]– это программа, предназначенная для перевода программы, написанной на каком-либо языке, в программу в машинных кодах. Процесс такого перевода называетсякомпиляцией.

Компилятор создаёт законченный результат – программу в машинных кодах. Затем эта программа выполняется. Откомпилированный вариант исходной программы можно сохранить на диске. Для повторного выполнения исходной программы компилятор уже не нужен. Достаточно загрузить с диска в память компьютера откомпилированный в предыдущий раз вариант и выполнить его.

Существует другой способ сочетания процессов трансляции и выполнения программы. Он называется интерпретацией.Суть процесса интерпретации состоит в следующем. Вначале переводится в машинные коды, а затем выполняется первая строка программы. Когда выполнение первой строки окончено, начинается перевод второй строки, которая затем выполняется и так далее. Управляет этим процессом программа-интерпретатор.

Интерпретатор [5]– это программа, предназначенная для построчных трансляции и выполнения исходной программы. Такой процесс называетсяинтерпретацией.

В процесс трансляции [3] входит проверка исходной программы на соответствие правилам используемого в ней языка. Если в программе обнаружены ошибки, транслятор вводит сообщение о них на устройство вывода (обычно, на экран дисплея).


Интерпретатор сообщает [6] о найденных им ошибках после трансляции каждой строки программы. Это значительно облегчает процесс поиска и исправления ошибок в программе, однако существенно увеличивает время трансляции. Компилятор транслирует программу намного быстрее, чем интерпретатор, но сообщает о найденных им ошибках после завершения компиляции всей программы. Найти и исправить ошибки в этом случае труднее. Поэтому интерпретаторы рассчитаны, в основном, на языки, предназначенные для обучения программированию, и используются начинающими программистами. Большинство современных языков предназначены для разработки сложных пакетов программ и рассчитаны на компиляцию.

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

Как правило, программы-компиляторы и интерпретаторы [6] называются так же, как и языки, для перевода с которых они предназначены. Слова Паскаль, Ада, Си могут относиться как к названиям языков, так и к названиям соответствующих программ.

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

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

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

Транслятор – это программа, предназначенная для перевода программы, написанной на одном языке программирования, в программу на другом языке программирования. Процесс перевода называется трансляцией.

Компилятор создаёт законченный результат – программу в машинных кодах. Затем эта программа выполняется.

Интерпретатор – это программа, предназначенная для построчных трансляции и выполнения исходной программы. Такой процесс называетсяинтерпретацией.

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

Глава 2. Классификация языков программирования