Языки программирования Скачать
презентацию
<<  Грамматика языков Классификация языков программирования  >>
Синтаксическая диаграмма
Синтаксическая диаграмма
Синтаксическая диаграмма
Синтаксическая диаграмма
Фото из презентации «История развития языков программирования» к уроку информатики на тему «Языки программирования»

Автор: . Чтобы познакомиться с фотографией в полном размере, нажмите на её эскиз. Чтобы можно было использовать все фотографии на уроке информатики, скачайте бесплатно презентацию «История развития языков программирования» со всеми фотографиями в zip-архиве размером 126 КБ.

Скачать презентацию

История развития языков программирования

содержание презентации «История развития языков программирования»
Сл Текст Эф Сл Текст Эф
1Языки программирования высокого уровня.0 21т.д.), имеет алфавит, свои грамматику и синтаксис, а0
Информатика. кафедра ЮНЕСКО по НИТ. 1. также семантику. Алфавит – фиксированный для данного
2История развития языков высокого уровня. В 20-х0 языка набор основных символов, допускаемых для
годах XIX века Ч.Бэббиджем была высказана мысль о составления текста программы на этом языке. Синтаксис –
предварительной записи порядка действий машины для система правил, определяющих допустимые конструкции
последующей автоматической реализации вычислений - языка программирования из букв алфавита. Семантика –
программе. И, хотя использованная Бэббиджем запись система правил однозначного толкования отдельных
программы на перфокартах, придуманная для управления языковых конструкций, позволяющих воспроизвести процесс
ткацкими станками французским изобретателем Жозефом обработки данных. 21. кафедра ЮНЕСКО по НИТ.
Мари-Жаккаром, технически не имеет ничего общего с 22Основные понятия. Взаимодействие синтаксических и0
современными приемами хранения программ в ЭВМ, принцип семантических правил определяют те или иные понятия
здесь по-существу один. С этого момента начинается языка, например, операторы, идентификаторы, переменные,
история программирования. Аду Лавлейс, одну из немногих функции и процедуры, модули и т.д. В отличие от
современников Чарльза Бэббиджа, кто сумел по естественных языков правила грамматики и семантики для
достоинству оценить аналитическую машину, называют языков программирования, как и для всех формальных
первым в мире программистом. Она теоретически языков, должны быть явно, однозначно и четко
разработала некоторые приемы управления сформулированы. Языки программирования, имитирующие
последовательностью вычислений, которые используются в естественные языки, обладающие укрупненными командами,
программировании и по сей день, описала одну из ориентированными на решение прикладных содержательных
важнейших конструкций практически любого современного задач, называют языками «высокого уровня». 22. кафедра
языка программирования - цикл. 2. кафедра ЮНЕСКО по ЮНЕСКО по НИТ.
НИТ. 23Достоинства языков программирования высокого0
3История развития языков высокого уровня. Следующий0 уровня. Алфавит языка значительно шире машинного, что
этап: появление системы кодирования машинных команд с делает его гораздо более выразительным и существенно
помощью специальных символов, предложенной Джоном повышает наглядность и понятность текста; набор
Моучли, сотрудником Пенсильванского университета. Грейс операций, допустимых для использования, не зависит от
Мюррей Хоппер, которая посвятила всю свою жизнь набора машинных операций, а выбирается из соображений
компьютерам и программированию, стала «третьим в мире удобства формулирования алгоритмов решения задач
программистом первого в мире большого цифрового определенного класса; конструкции команд (операторов)
компьютера». 3. кафедра ЮНЕСКО по НИТ. отражают содержательные виды обработки данных и
4История развития языков высокого уровня. При работе0 задаются в удобном для человека виде; используется
на компьютере «Марк-1» Г.Хоппер и ее группе пришлось аппарат переменных и действия с ними; поддерживается
столкнуться со многими проблемами и все, что ими широкий набор типов данных. 23. кафедра ЮНЕСКО по НИТ.
придумано, было впервые. В частности, они придумали 24Метаязыки описания языков программирования.0
подпрограммы. Сейчас любой программист не задумываясь Интерпретация конструкций языка программирования должна
использует аппарат подпрограмм в любом языке быть абсолютно однозначной, ибо фраза на языке
программирования. И еще одно фундаментальное понятие программирования превращается в машинный код
техники программирования впервые ввели Г.Хоппер и ее автоматически, с помощью программы-транслятора, и любой
группа - «отладка». Однажды жарким летним днем 1945г. намек на неоднозначность либо делает эту фразу
неожиданно произошла остановка компьютера «Марк-1». 4. непереводимой, либо приводит к ошибке. В этом отношении
кафедра ЮНЕСКО по НИТ. языки программирования значительно отличаются от
5История развития языков высокого уровня. На заре0 естественных языков, допускающих неоднозначно
компьютерной эры машинный код был единственным интерпретируемые фразы. 24. кафедра ЮНЕСКО по НИТ.
средством общения человека с компьютером. Огромным 25Метаязыки описания языков программирования. Для0
достижением создателей языков программирования было то, строгого и точного описания синтаксиса языка
что они сумели заставить сам компьютер работать программирования, как правило, используют специальные
переводчиком с этих языков на машинный код. В конце метаязыки (языки для описания других языков). Наиболее
40-х годов создана система под названием «Short Code», распространенными метаязыками являются
которая являлась примитивным языком программирования металингвистические формулы Бэкуса - Наура (язык БНФ) и
высокого уровня. В ней программист записывал решаемую синтаксические диаграммы Вирта. 25. кафедра ЮНЕСКО по
задачу в виде математических формул, а затем, используя НИТ.
специальную таблицу, переводил символ за символом, 26Язык БНФ. Язык БНФ (называемый также языком0
преобразовывал эти формулы в двухлитерные коды. В нормальных форм) представляет компактную форму в виде
дальнейшем специальная программа компьютера превращала некоторых формул, похожих на математические. Для
эти коды в двоичный машинный код. Система, каждого понятия языка существует единственная
разработанная Дж. Моучли, была по существу одним из метаформула (нормальная форма). Она состоит из левой и
первых примитивных интерпретаторов. 5. кафедра ЮНЕСКО правой частей. В левой части указывается определяемое
по НИТ. понятие, а в правой - задается множество допустимых
6История развития языков высокого уровня. В 1951 г.0 конструкций языка, которые объединяются в это понятие.
Хоппер создала первый в мире компилятор и ею же был В формуле используют специальные метасимволы в виде
введен сам этот термин. Компилятор Хоппер осуществлял угловых скобок, в которых заключено определяемое
функцию объединения команд и в ходе трансляции понятие (в левой части формулы) или ранее определенное
производил организацию подпрограмм, выделение памяти понятие (в ее правой части), а разделение левой и
компьютера, преобразование команд высокого уровня в правой частей указывается метасимволом «::=», смысл
машинные команды. В 1954 г. разработана система, которого эквивалентен словам «по определению есть». 26.
включающая язык программирования и компилятор, которая кафедра ЮНЕСКО по НИТ.
в дальнейшем получила название MATH-MATIC. В 1958 г. 27Язык БНФ (пример метаформул).0
появился компилятор FLOW-MATIC – первый язык для задач <переменная>::=А|В
обработки коммерческих данных. 6. кафедра ЮНЕСКО по <выражение>::=<переменная>|<переменная&g
НИТ. ;+<переменная>|<переменная>-<переменная&
7История развития языков высокого уровня. Середина0 t; означают, что в том языке, на который эта
50-х годов характеризуется стремительным прогрессом в метаформула распространяется, под термином
области программирования. Роль программирования в <переменная> понимается любая из букв А или В, а
машинных командах стала уменьшаться. Первым и одним из под термином <выражение> - любая из следующих
наиболее распространенных был Фортран (FORTRAN, от десяти записей: А; В; А+А; А+В; В+А; В+В; А-А; А-В:
FORmula TRANslator - переводчик формул), разработанный В-А; В-В Знак | следует читать «или». 27. кафедра
группой программистов фирмы IBM в 1954 г. (первая ЮНЕСКО по НИТ.
версия). В середине 60-х годов сотрудники 28Язык БНФ (пример понятия «двоичный код»). Правая0
математического факультета Дартмутского колледжа Томас часть метаформулы может содержать правило построения
Курц и Джон Кемени создали специализированный язык допустимых последовательностей. Допускаются рекурсивные
программирования, который состоял из простых слов определения терминов и понятий, т.е. когда в правой
английского языка. Новый язык назвали «универсальным части формулы участвует понятие, определяемое левой
символическим кодом для начинающих» (Beginners частью. Например, пусть необходимо ввести понятие
All-Purpose Symbolic Instruction Code, или, сокращенно, <двоичный код>, под которым понимался любая
BASIC). Годом рождения нового языка можно считать 1964 непустая последовательность цифр 0 и 1. Тогда простое и
г. Сегодня универсальный язык Бейсик (имеющий множество компактное рекурсивное определение с помощью метаформул
версий) приобрел большую популярность и получил широкое выглядит так: <двоичная цифра>::= 0|1
распространение среди пользователей ЭВМ различных <двоичный код>::=<двоичная
категорий во всем мире. 7. кафедра ЮНЕСКО по НИТ. цифра>|<двоичный код> <двоичная цифра>
8История развития языков высокого уровня. В начале0 28. кафедра ЮНЕСКО по НИТ.
60-х годов все существующие языки программирования 29Язык БНФ (пример понятия «двоичный код»). Для0
высокого уровня можно было пересчитать по пальцам, задания синтаксических конструкций произвольной длины
однако впоследствии их число достигло трех тысяч. В часто используют фигурные скобки как метасимволы.
60-е годы были предприняты попытки преодолеть эту Фигурные скобки означают, что конструкция может
«разноголосицу» путем создания универсального языка повторяться нуль или более раз. В частности, термин
программирования. Первым детищем этого направления стал <двоичный код> можно определить по другому, а
PL/I (Programm Language One), 1967 г. Затем на эту роль именно: <двоичный код>::=<двоичная
претендовал АЛГОЛ-68 (1968 г.). Предполагалось, что цифра>{<двоичная цифра>} Для полноты множества
подобные языки будут развиваться и усовершенствоваться синтаксических конструкций, необходимо определить
и вытеснят все остальные. Однако ни одна из этих конструкцию <пусто>: <пусто>::=. 29.
попыток на сегодняшний день не увенчалась успехом (хотя кафедра ЮНЕСКО по НИТ.
PL/I в усеченных версиях использовали многие 30Синтаксическая диаграмма. Синтаксическая диаграмма0
программисты). Всеохватность языка приводила к является графическим представлением значения
неоправданной, с точки зрения программиста, сложности метапеременной метаязыка. Диаграмма состоит из основных
конструкций, неэффективности компиляторов. 8. кафедра символов или понятий языка. Каждая диаграмма имеет
ЮНЕСКО по НИТ. входящую и выходящую стрелки, означающие начало и конец
9История развития языков высокого уровня. Языки0 синтаксической конструкции и отражающие процесс ее
программирования служат разным целям и их выбор чтения и анализа. Из каждого элемента выходит одна или
определяется удобностью пользователя, пригодностью для несколько стрелок, оказывающих на те элементы, которые
данного компьютера и данной задачи. Задачи для могут следовать непосредственно за данным элементом.
компьютера бывают самые разнообразные: вычислительные, 30. кафедра ЮНЕСКО по НИТ.
экономические, графические, экспертные и т.д. Такая 31Синтаксическая диаграмма. <переменная>:: =0
разнотипность решаемых компьютером задач и определяет Запись эквивалентна метаформуле <переменная>::=
многообразие языков программирования. В А|В. 31. кафедра ЮНЕСКО по НИТ.
программировании наилучший результат достигается при 32Грамматика языка программирования. Описанию0
индивидуальном подходе, исходящем из класса задачи, грамматики языка предшествует описание его алфавита.
уровня и интересов программиста. 9. кафедра ЮНЕСКО по Алфавит любого языка состоит из фиксированного набора
НИТ. символов, однозначно трактуемых. Алфавит языков
10Области применения языков высокого уровня. Бейсик0 программирования, как правило, связан с литерами
широко употребляется при написании простых программ; клавиатуры печатной машинки. Клавиатуры персональных
Фортран является классическим языком программирования компьютеров близки к ним по наличию литер. Алфавиты
при решении на ЭВМ математических и инженерных задач; большинства языков программирования близки друг другу и
язык Кобол был задуман как основной язык для массовой основываются на буквах латинского алфавита, арабских
обработки данных в сферах управления и бизнеса. язык цифрах и общепринятых спецсимволах, таких как знаки
ЛОГО, созданный для обучения программированию препинания, математических операций, сравнений и
школьников Пролог, разработан как язык программирования обозначений. 32. кафедра ЮНЕСКО по НИТ.
для создания систем искусственного интеллекта. 10. 33Элементы алфавита. <Буква>::= aabbccddeeff и0
кафедра ЮНЕСКО по НИТ. т.Д. <Цифра>::= 0123456789 <знак
11История развития языков высокого уровня. В конце0 арифметической операции >::= */+-
50-х годов появился язык программирования Алгол (ALGOL, <разделитель>::=.,;:()[]{}':= <Служебное
от ALGOrithmic Language - алгоритмический язык). Алгол слово>:: = begin end if then else for next и т.Д.
предназначен для записи алгоритмов, которые строятся в <Спецсимвол>::= <знак арифметической
виде последовательности процедур, применяемых для операции> | <разделитель> | <служебное
решения поставленных задач. Специалисты-практики слово> <основной символ>::= <буква> |
восприняли этот язык далеко неоднозначно, но, тем не <цифра> | <спецсимвол>
менее, его влияние на развитие других языков и теорию <комментарий>::= <любая последовательность
программирования оказалось весьма значительным. В нашей символов> 33. кафедра ЮНЕСКО по НИТ.
стране в те годы был создан под руководством Сергея 34Фундаментальных понятия языка. Оператор - одно из0
Петровича Ершова транслятор Альфа, который представлял ведущих понятий всех языков программирования. Каждый
довольно удачную русифицированную версию Алгола. оператор представляет собой законченную фразу языка и
Впоследствии академик Ершов сыграл важнейшую роль в определяет однозначно трактуемый этап обработки данных.
становлении в СССР школьной информатики. 11. кафедра В соответствии с теорией алгоритмов выделяют основные
ЮНЕСКО по НИТ. операторы языка: присвоения, условный и безусловный
12История развития языков высокого уровня. Язык0 переход, пустой оператор. К производным, не основным,
Паскаль первоначально разрабатывался как учебный, и, относят составной оператор, оператор выбора, оператор
действительно, сейчас он является одним из основных цикла и оператор присоединения. 34. кафедра ЮНЕСКО по
языков обучения программированию в школах и вузах. НИТ.
Однако, качества его в совокупности оказались столь 35Фундаментальных понятия языка. Величины могут быть0
высоки, что им охотно пользуются и профессиональные постоянными и переменными. Значения постоянных величин
программисты. Француз Филип Кан разработал систему не изменяются в ходе выполнения программы. Величина
Турбо-Паскаль. Суть его идеи состояла в объединении характеризуется типом, именем и значением. Наиболее
последовательных этапов обработки программы - распространенные типы величин - числовые (целые и
компиляции, редактирования связей, отладки и вещественные), символьные, логические. Тип величины
диагностики ошибок - в едином интерфейсе. 12. кафедра определяется ее значением. Другая важная классификация
ЮНЕСКО по НИТ. величин - простые и структурированные. Простая величина
13История развития языков высокого уровня. Период с0 в каждый момент может иметь не более одного значения.
конца 60-х и до начала 80-х годов характеризуется Структурированная величина, имея одно имя, может иметь
бурным ростом числа различных языков программирования, разом несколько значений. Эти значения представляют
сопровождавшим, как это ни парадоксально, кризис собой элементы величины. 35. кафедра ЮНЕСКО по НИТ.
программного обеспечения. Этот кризис особо остро 36Структурированная величина. Важнейшие0
переживало военное ведомство США. В январе 1975 г. характеристики структурированной величины:
Пентагон решил навести порядок в хаосе трансляторов и упорядоченность (да или нет), однородность (да или
учредит комитет, которому было предписано разработать нет), способ доступа к элементам, фиксированность числа
один универсальный язык. В мае 1979 г. был объявлен элементов (да или нет). Так, массив является
победитель - группа ученых во главе с Жаном Ихбиа. упорядоченной однородной структурой с прямым доступом к
Победивший язык окрестили АДА, в честь Огасты Ады элементам и фиксированным их количеством. 36. кафедра
Лавлейс. Язык АДА - прямой наследник языка Паскаль. - ЮНЕСКО по НИТ.
этот язык предназначен для создания и длительного 37Идентификатор. Всем программным объектам в языках0
(многолетнего) сопровождения больших программных даются индивидуальные имена. Имя программного объекта
систем, допускает возможность параллельной обработки, называют идентификатором (от слова «идентифицировать»).
правления процессами в реальном времени и многое Чаще всего идентификатором является любая конечная
другое, чего трудно или невозможно достичь средствами последовательность букв к цифр, начинающаяся с буквы:
более простых языков. 13. кафедра ЮНЕСКО по НИТ. <идентификатор>::=<буква> |
14История развития языков высокого уровня. Большой0 <идентификатор> | <буква>
отпечаток на современное программирование наложил язык <идентификатор><цифра> Многим слово
Си (первая версия - 1972 г.), являющийся очень «идентификатор» не нравится, и в настоящее время чаще
популярным в среде разработчиков систем программного употребляют слово «имя», поскольку
обеспечения (включая операционные системы). Си сочетает <имя>::=<идентификатор>. 37. кафедра ЮНЕСКО
в себе черты как языка высокого уровня, так и по НИТ.
машинно-ориентированного языка, допуская программиста 38Объявление переменных. Описания или объявления0
ко всем машинным ресурсам, чего не обеспечивают такие программных объектов связаны с правилами обработки
языки, как Бейсик и Паскаль. 14. кафедра ЮНЕСКО по НИТ. данных. Данные бывают разные и необходимо для каждого
15История развития языков высокого уровня. Многие0 из них определить его свойства. Например, если в
языки, первоначально разработанные для больших и малых качестве данных выступает массив, то необходимо задать
ЭВМ, в дальнейшем были приспособлены к персональным его размерность, границы индексов, тип элементов
компьютерам. В течение многих лет программное массива. Описательная часть языка программирования
обеспечение строилось на основе операциональных и является необходимой как для системных программистов -
процедурных языков, таких как Фортран, Бейсик, Паскаль, разработчиков трансляторов, которые должны, в
Ада, Си. И сегодня современные версии этих и им частности, проводить синтаксическую и семантическую
подобных языков (Модула, Форт и др.) доминируют при диагностику программ, - так и для «прикладного»
разработке прикладных программных средств. Однако по программиста, которому объявления программных объектов
мере эволюции языков программирования получили широкое часто облегчают процесс разработки и отладки программ.
распространение и другие, принципиально иные, подходы к 38. кафедра ЮНЕСКО по НИТ.
созданию программ. 15. кафедра ЮНЕСКО по НИТ. 39Список наиболее употребительных обозначений типов0
16История развития языков высокого уровня.0 данных, используемых в описаниях. Целый - Integer
Классическое операциональное и/или процедурное Вещественный - Real Логический - Boolean Символьный -
программирование требует от программиста детального Char Строковый - String Массив - Array Множество -Set
описания того, как решать задачу, т.е. формулировки Файл - File Запись - Record Объект - Object. 39.
алгоритма и его специальной записи. При этом ожидаемые кафедра ЮНЕСКО по НИТ.
свойства результата обычно не указываются. Основные 40Переменная. Понятие «переменная» в языках0
понятия языков этих групп - оператор и данные. При программирования отличается от общепринятого в
процедурном подходе операторы объединяются в группы - математике. Переменная - это программный объект,
процедуры. Структурное программирование в целом не способный принимать некоторое значение с помощью
выходит за рамки этого направления, оно лишь оператора присваивания. В ходе выполнения программы
дополнительно фиксирует некоторые полезные приемы значения переменной могут неоднократно изменяться.
технологии программирования. 16. кафедра ЮНЕСКО по НИТ. Каждая переменная после ее описания отождествляется с
17История развития языков высокого уровня. Другое0 некоторой ячейкой памяти, содержимое которой является
направление в программировании связано с методологиями ее значением. Синтаксис переменной, точнее, ее
непроцедурного программирования. К ним можно отнести идентификатора, как правило, имеет вид: <имя
объектно-ориентированное и декларативное переменной>::= ——><буква>———>
программирование. Объектно-ориентированный язык создает —><буква>———> —><цифра>——>
окружение в виде множества независимых объектов. Каждый —><спецсимвол> 40. кафедра ЮНЕСКО по НИТ.
объект ведет себя подобно отдельному компьютеру, их 41Функция. Функция - это программный объект, задающий0
можно использовать для решения задач как «черные вычислительную процедуру определения значения,
ящики», не вникая во внутренние механизмы их зависимого от некоторых аргументов. Вводится в языки
функционирования. Из языков объектного программирования для задания программистом необходимых
программирования, популярных среди профессионалов, ему функциональных зависимостей. В каждом языке
следует назвать прежде всего Си++, для более широкого высокого уровня имеется в наличии библиотека
круга программистов предпочтительны среды типа Delphi и стандартных функций: арифметических, логических,
Visual Basic. 17. кафедра ЮНЕСКО по НИТ. символьных, файловых и т.п. 41. кафедра ЮНЕСКО по НИТ.
18Классификация языков программирования. При0 42Процедура. Процедура - это программный объект,0
использовании декларативного языка программист представляющий некоторый самостоятельный этап обработки
указывает исходные информационные структуры, данных. Процедуры явились преемниками подпрограмм,
взаимосвязи между ними и то, какими свойствами должен которые были введены для облегчения разработки программ
обладать результат. При этом процедуру его получения еще на самых ранних стадиях формирования
(«алгоритм») программист не строит (по крайней мере, в алгоритмических языков. Процедура имеет входные и
идеале). В этих языках отсутствует понятие «оператор» выходные параметры, называемые формальными. При
(«команда»). Декларативные языки можно подразделить на использовании процедуры формальные параметры заменяются
два семейства - логические (типичный представитель - на фактические. 42. кафедра ЮНЕСКО по НИТ.
Пролог) и функциональные (Лисп). 18. кафедра ЮНЕСКО по 43Модуль. Модуль (Unit) - это специальная программная0
НИТ. единица, предназначенная для создания библиотек и
19Классификация языков программирования. 19. кафедра0 разделения больших программ на логически связанные
ЮНЕСКО по НИТ. блоки. Модуль - это набор констант, типов данных,
20Языки программирования высокого уровня. Основные0 переменных, процедур и функций. В состав модуля входят
понятия. кафедра ЮНЕСКО по НИТ. 20. разделы: заголовок, интерфейс, реализация,
21Основные понятия. Языки программирования – это0 инициализация. 43. кафедра ЮНЕСКО по НИТ.
формальные языки специально созданные для общения 44Языки высокого уровня. Паскаль Бейсик Фортран Си и0
человека с компьютером. Каждый язык программирования, Си++ Пролог Лисп Delphi. 44. кафедра ЮНЕСКО по НИТ.
равно как и «естественный» язык (русский, английский и
44 «История развития языков программирования» | История развития языков программирования 0
http://900igr.net/fotografii/informatika/Istorija-razvitija-jazykov-programmirovanija/Istorija-razvitija-jazykov-programmirovanija.html
cсылка на страницу
Урок

Информатика

126 тем
Фото
Презентация: История развития языков программирования | Тема: Языки программирования | Урок: Информатика | Вид: Фото
900igr.net > Презентации по информатике > Языки программирования > История развития языков программирования