Файл: Классификация языков программирования высокого уровня.pdf

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

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

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

Добавлен: 22.04.2023

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

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

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

ВВЕДЕНИЕ

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

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

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

Цели исследования:

  1. Просмотреть общее сведения и уровни языков программирования.
  2. Просмотреть поколения развития языков программирования.
  3. Сделать обзор современных языков программирования.

Задачи исследования:

  1. Ознакомления с языками программирования высокого уровня.
  2. Рассмотрение поколений развития языков программирования высокого уровня.
  3. Обзор современных языков программирования.

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

Во второй главе рассматривается поколения развития языков программирования.

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

В четверной главе рассматривается краткий обзор языков программирования высокого уровня.

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

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

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

В создании ПО значительную роль играет уровень возможностей средств общения человека с ЭВМ. Во многом этот уровень определяется языками программирования (ЯП)[3].

Управлять компьютером нужно по определенному алгоритму. Алгоритм — это точно определенное описание способа решения задачи в виде конечной (по времени) последовательности действий. Для представления алгоритма в виде, понятном компьютеру, служат языки программирования. Сначала всегда разрабатывается алгоритм действий, а потом он записывается на одном из таких языков. В итоге получается текст программы — полное, законченное и детальное описание алгоритма на языке программирования [6].


Алгоритм решения задачи, заданный в виде последовательности команд на языке вычислительной машины (в кодах машины), называется машинной программой

________________________

[7] Быканов Н.П. Классификация языков программирования // Международный журнал социальных и гуманитарных наук. – 2016. – Т. 5. №1. – С. 229.: http://intjournal.ru/klassifikatsiya-yazykov-programmirovaniya. (дата обращения 09.02.2018).

[3] Программирование на языках высокого уровня: учебное пособие/ О.Л. Голицына, И.И. Попов. – М.: ФОРУМ, 2017. – С.3.

[6] Учебник: Информатика: Базовый курс 20.1. языки программирования: http://uchebnik.biz/book/62-informatika-bazovyj-kurs/96-201-yazyki-programmirovaniya.html . (дата обращения 13.02.2018)

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

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

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

Процесс перевода алгоритма в машинную программу называется трансляцией.

Осуществление трансляции силами человека — задача очень сложная в силу большого объема работы и сложности системы команд современных ЭВМ. Поэтому в целях облегчения задачи трансляции появились промежуточные способы задания алгоритмов, получившие название языков программирования [11].

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

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

________________________

[11] Структурное программирование. URL: http://shkolo.ru/strukturnoe-programmirovanie/ (дата обращения 27.01.2018).

[6] Учебник: Информатика: Базовый курс. 20.1. языки программирования: URL: http://uchebnik.biz/book/62-informatika-bazovyj-kurs/96-201-yazyki-programmirovaniya.html . (дата обращения 13.02.2018).

[2] Методы программирования. Компьютерные вычисления А. В. Могилев, Л. В. Листрова. — СПб.: БХВ-Петербург, 2008. —- C 19.


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

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

________________________

[16] https://infourok.ru/konspekt-lekciy-po-discipline-informatika-na-temu-yaziki-programmirovaniya-2721699.html (дата обращения 09.02.2018).

Глава 2. Поколения развития языков программирования

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

Первые языки программирования возникли относительно недавно. Различные исследователи указывают в качестве времени их создания 20-е, 30-е и даже 40-е годы XX столетия [8].

Развитие языков программирования принято делить на пять поколений.

В первое поколение входят языки, созданные в начале 50-х годов, когда первые компьютеры только появились на свет [6]. Это был первый язык ассемблера, созданный по принципу «одна инструкция — одна строка».

Первые языки программирования (ЯП) представляли собой набор машинных команд в двоичном (бинарном) или восьмеричном формате, который определяется архитектурой конкретной ЭВМ. Каждый тип ЭВМ имел свой ЯП, программы на которых были пригодны для данного типа ЭВМ. От программиста при этом требовалось хорошее знание не только машинного языка, но и архитектуры ЭВМ [3].

Расцвет второго поколения языков программирования пришелся на конец 50-х — начало 60-х годов. Тогда был разработан символический ассемблер, в котором появилось понятие переменной. Он стал первым полноценным языком программирования. Благодаря его возникновению заметно возросли скорость разработки и надежность программ [6].

В 1950-х гг. появляются первые средства автоматизации программирования — языки Автокоды.

________________________

[8] Введение в теорию программирования. Функциональный подход. Лекция 2: Классификация языков программирования. URL:https://www.intuit.ru/studies/courses/39/39/lecture/1153?page=2. (дата обращения 09.02.2018).

[6] Учебник: Информатика: Базовый курс 20.1. языки программирования: http://uchebnik.biz/book/62-informatika-bazovyj-kurs/96-201-yazyki-programmirovaniya.html . (дата обращения 13.02.2018)


[3] Программирование на языках высокого уровня: учебное пособие/ О.Л. Голицына, И.И. Попов. – М.: ФОРУМ, 2017. – С.3.

Позднее для языков этого уровня стало применяться название «Ассемблеры» [5].

Этот этап развития языков программирования (ЯП) характеризуется созданием языков ассемблерного типа, позволяющих вместо двоичных и других форматов машинных команд использовать их мнемонические символьные обозначения (имена) [3].

Появление языков типа Автокод-Ассемблер облегчило участь программистов. Переменные величины стали изображаться символическими именами. Числовые коды операций заменились на мнемонические (словесные) обозначения, которые легче запомнить [5]. Язык программирования стал понятнее для человека, но при этом удалился от языка машинных команд.

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

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

Следующее десятилетие 60-е гг. – 70-е гг. ознаменовалось появлением языков программирования так называемого «высокого уровня», по сравнению с ранее рассмотренными предшественниками, соответственно именуемыми низкоуровневыми языками.

________________________

[5] Семакин И. Г., Шестаков А. П. Основы программирования: Учебник. — М.: Мастерство, 2002. –С22.

[3] Программирование на языках высокого уровня: учебное пособие/ О.Л. Голицына, И.И. Попов. – М.: ФОРУМ, 2017. – С.3.

[8] Введение в теорию программирования. Функциональный подход. Лекция 2: Классификация языков программирования. URL:https://www.intuit.ru/studies/courses/39/39/lecture/1153?page=2. (дата обращения 09.02.2018).

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

Языки высокого уровня (ЯВУ) открывают третье поколение ЯП. Основные черты высокоуровневых языков [3] – абстракция, то есть введение смысловых конструкций, кратко описывающих данные и операции над ними, описания которых в машинно-ориентированных языках очень длинны и сложны для понимания. Также они были призваны обеспечить платформенную независимость сути алгоритмов. С их появлением зависимость от платформы перекладывается на трансляторы, «переводящие» текст, написанный на языке высокого уровня, в элементарные машинные команды [7]. Примерами языков программирования высокого уровня являются C++, C#, PHP, Perl, Java и многие другие.


Первый ЯВУ – Fortran – был разработан под руководством Дж. Бекуса в фирме IBM в 1956 г.

В конце 50-х годов плодом международного сотрудничества в области программирования явился Алгол-60 (ALGOL, от ALGOrithmic Language — алгоритмический язык, версия 1960 г.).

Развитие идеи Алгола о структуризации разработки алгоритмов нашло наивысшее отражение при создании в начале 1970-х годов языка Паскаль швейцарским ученым Никлаусом Виртом [2].

Большое количество языков программирования появилось в 1960—1970-х гг. А за всю историю ЭВМ их было создано более тысячи. Но распространились, выдержали испытание временем немногие.

В середине 1960-х годов сотрудники математического факультета Дартмутского колледжа Томас Курц и Джон Кемени создали специализирован-

________________________

[6] Учебник: Информатика: Базовый курс 20.1. языки программирования: http://uchebnik.biz/book/62-informatika-bazovyj-kurs/96-201-yazyki-programmirovaniya.html . (дата обращения 13.02.2018)

[3] Программ-ние на языках высокого уровня: учеб. пособие/ О.Л. Голицына, И.И. Попов. – М.: ФОРУМ, 2017. – С.4.

[7] Быканов Н.П. Классификация языков программирования // Международный журнал социальных и гуманитарных наук. – 2016. – Т. 5. №1. – С. 229-232. URL:: http://intjournal.ru/klassifikatsiya-yazykov-programmirovaniya. (дата обращения 09.02.2018).

[2] Методы программ-ния. Компьют-ые вычисления /А.В. Могилев, Л.В. Листрова. - СПб.: БХВ-Петербург,

ный язык программирования, который состоял из простых слов английского языка. Новый язык назвали «универсальным символическим кодом для начинающих» (Beginners All Purpose Symbolic Instruction Code, или, сокращенно, BASIC, а по-русски — Бейсик). Годом рождения нового языка можно считать 1964 г. [2].

Языки Фортран и Алгол были ориентированы на научно-технические расчеты математического характера. Кобол — язык для программирования экономических задач [2].

В эпоху ЭВМ третьего поколения получил большое распространение язык PL/1 {Program Language One), разработанный фирмой IBM. Это был первый язык, претендовавший на универсальность, т. е. на возможность решать любые задачи: вычислительные, обработки текстов, накопления и поиска информации. Однако PL/1 оказался слишком сложным языком.

Значительным событием в истории языков программирования высокого уровня стало создание в 1971 г. языка Паскаль. Его автор — швейцарский профессор Н.Вирт — разрабатывал Паскаль как учебный язык структурного программирования [2].

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