Презентация, доклад по информатике Языки программирования. История развития. Классификация

Содержание

Какой самый первый язык программирования и кем он создан? Ответить очень сложно, так как здесь нужно рассматривать множество нюансов:какой язык имеется ввиду, высокоуровневый или низкоуровневый;стоит ли учитывать языки, которые так и не нашли широкого применения;можно ли

Слайд 1Языки программирования

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

Слайд 2Какой самый первый язык программирования и кем он создан?
Ответить очень

сложно, так как здесь нужно рассматривать множество нюансов:
какой язык имеется ввиду, высокоуровневый или низкоуровневый;
стоит ли учитывать языки, которые так и не нашли широкого применения;
можно ли брать во внимание оставшиеся незаметными миру попытки разработки языков всяческими любителями, и другие детали.
Какой самый первый язык программирования и кем он создан? Ответить очень сложно, так как здесь нужно рассматривать

Слайд 3Поколения языков программирования
Языки программирования, ориентированные на команды
процессора и учитывающие его

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

Слайд 4СИСТЕМА ПРОГРАММИРОВАНИЯ ПЭВМ
На начальном этапе развития вычислительной техники программирование осуществлялось только

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

Машинный код

Выполнение на ПВЭМ


СИСТЕМА ПРОГРАММИРОВАНИЯ ПЭВМНа начальном этапе развития вычислительной техники программирование осуществлялось только в машинных командах. При программировании в

Слайд 5Приведём фрагмент (примерно 1/10 часть!) программы на машинном коде, которая выводит

на экран приветствие
«Hello, world!»:

457f464c010100010000000000000000000200030001 000003d0080000340000069800000000000000340020
00050028001600130006000000340000003408000000000000аОООООООа0000000050000000400000003000000d4000000d4080000000000001300000013000000040000000100000001000000000000000008000000000004f5000004f5000000050000100000000001000004f8000014f808000000000000c4000000c8000000060000000000000020000052c0000152c080000000000009000000090000000060000000400006c2f62696c2f2d6496c756e2e786f73312e0000001100000011000000000000000eOOOOOOOaOOOOOOOOOOOO...

Приведём фрагмент (примерно 1/10 часть!) программы на машинном коде, которая выводит на экран приветствие «Hello, world!»:457f464c010100010000000000000000000200030001 000003d008000034000006980000000000000034002000050028001600130006000000340000003408000000000000аОООООООа0000000050000000400000003000000d4000000d4080000000000001300000013000000040000000100000001000000000000000008000000000004f5000004f5000000050000100000000001000004f8000014f808000000000000c4000000c8000000060000000000000020000052c0000152c080000000000009000000090000000060000000400006c2f62696c2f2d6496c756e2e786f73312e0000001100000011000000000000000eOOOOOOOaOOOOOOOOOOOO...

Слайд 6ПРОТИВОРЕЧИЕ
между огромными возможностями ПЭВМ, способных выполнять сотни тысяч команд в

секунду, и столь же огромными временными затратами на разработку
и отладку программ.


языки
АССЕМБЛЕРА

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

ПРОТИВОРЕЧИЕ между огромными возможностями ПЭВМ, способных выполнять сотни тысяч команд в секунду, и столь же огромными временными

Слайд 7Поколения языков программирования

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

Слайд 8Первый язык высокого уровня – FORTRAN
(FORmula TRANslator – переводчик формул). Основное

назначение – программирование научно-технических задач.
Создан в период с 1954 по 1957 г. группой программистов фирмы IBM.

Язык высокого уровня [high-level language] - язык программирования, средства которого обеспечивают описание задачи в наглядном, легко воспринимаемом виде, удобном для программиста. Он не зависит от внутренних машинных кодов ЭВМ любого типа.

Говорят, что как только появился второй язык программирования, начались бурные споры о том, какой язык лучше! Эти споры идут и поныне, принимая
иногда характер религиозных войн древности.

Первый язык высокого уровня – FORTRAN(FORmula TRANslator – переводчик формул). Основное назначение – программирование научно-технических задач.Создан в

Слайд 10Команды языка высокого уровня - слова естественного языка, что упрощает работу

программиста.

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

ПРОГРАММА НА
ЯЗЫКЕ ВЫСОКОГО
УРОВНЯ


ТРАНСЛЯТОРЫ


МАШИННЫЕ
КОДЫ

Транслятор превращает программу в исполняемый файл

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

Слайд 11Транслятор — средство для преобразования текстов из одного языка, понятного человеку,

в другой язык, понятный компьютеру.

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

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

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

Слайд 13Ну хоть
ЧТО-ТО
или
НЕМНОГО понятно?

Ну хоть ЧТО-ТОилиНЕМНОГО понятно?

Слайд 14УРА, ПРОДОЛЖАЕМ!!!
ЭТО ФИЗКУЛЬТМИНУТКА)))

УРА, ПРОДОЛЖАЕМ!!!ЭТО ФИЗКУЛЬТМИНУТКА)))

Слайд 15!!!ПОВТОРИМ!!!
!!!ЗАКРЕПИМ!!!

!!!ПОВТОРИМ!!!!!!ЗАКРЕПИМ!!!

Слайд 16ПЛЮСЫ И МИНУСЫ КОМПИЛЯЦИИ И ИНТЕРПРЕТАЦИИ
КОМПИЛЯТОРЫ
Быстрота работы программ
Отсутствие надобности компилятора

на компьютере пользователя

+


Программа имеет зависимость от ОС, под которую была скомпилирована
Сложность отладки кода программы

ИНТЕРПРЕТАТОРЫ

Работают на любой платформе
Более совершенные и наглядные средства диагностики ошибок
Упрощение отладки исходных кодов программ
Меньшие размеры машинных кодов

+


Не может выполняться отдельно без программы -интерпретатора
Программа выполняется медленнее

ПЛЮСЫ И МИНУСЫ КОМПИЛЯЦИИ И ИНТЕРПРЕТАЦИИКОМПИЛЯТОРЫ Быстрота работы программОтсутствие надобности компилятора на компьютере пользователя+–Программа имеет зависимость от

Слайд 18

Многообразие систем программирования нельзя рассматривать через призму какой-то одной классификации.

Многообразие систем программирования нельзя рассматривать через призму какой-то одной классификации.

Слайд 19Языки программирования
Типизированные
C
Python
PHP
Pascal

Ассемблер
Forth
Brainfuck

Нетипизированные
(безтипные)

Языки программированияТипизированныеC Python PHPPascal…АссемблерForthBrainfuck…Нетипизированные(безтипные)

Слайд 20СТАТИЧЕСКАЯ / ДИНАМИЧЕСКАЯ ТИПИЗАЦИЯ
Статическая - назначение и проверка согласования типов осуществляется

на этапе компиляции. Т.е. уже компилятор на 100% уверен, какой тип где находится. Типы данных ассоциируются с переменными, а не с конкретными значениями.
Примеры: Pascal, C, Java, C# и др;

В динамической типизации все типы выясняются уже во время выполнения программы.
Примеры: Python, JavaScript, Ruby и др.

ТИПИЗИРОВАННЫЕ ЯЗЫКИ

СТАТИЧЕСКАЯ / ДИНАМИЧЕСКАЯ ТИПИЗАЦИЯСтатическая - назначение и проверка согласования типов осуществляется на этапе компиляции. Т.е. уже компилятор

Слайд 21СИЛЬНАЯ(СТРОГАЯ)/СЛАБАЯ (НЕСТРОГАЯ) ТИПИЗАЦИЯ
Сильная типизация отличается тем, что язык не дает разрешение

сочетать в выражениях разные типы и не осуществляет автоматические скрытые изменения, к примеру, нельзя вычесть из строки множество.
Примеры: Pascal, Java, Python, Haskell, Lisp и др.
Языки со слабой типизацией выполняют множество неявных преобразований автоматически, даже если может произойти потеря точности или неоднозначное преобразование.
Примеры: C, JavaScript, Visual Basic, PHP и др.

ТИПИЗИРОВАННЫЕ ЯЗЫКИ

СИЛЬНАЯ(СТРОГАЯ)/СЛАБАЯ (НЕСТРОГАЯ) ТИПИЗАЦИЯСильная типизация отличается тем, что язык не дает разрешение сочетать в выражениях разные типы и

Слайд 22ЯВНАЯ/НЕЯВНАЯ ТИПИЗАЦИЯ
Явная типизация – означает, что тип новых переменных / функций

/ их доводов необходимо задавать явно.
Примеры: Pascal, C++, D, C#и др.

Неявная типизация переносит эту задачу на компилятор / интерпретатор.
Примеры: Python, PHP, Lua, JavaScript и др.

ТИПИЗИРОВАННЫЕ ЯЗЫКИ

ЯВНАЯ/НЕЯВНАЯ ТИПИЗАЦИЯЯвная типизация – означает, что тип новых переменных / функций / их доводов необходимо задавать явно.

Слайд 23
ЧТО ВХОДИТ
В ПОНЯТИЕ
«ПРОГРАММИРОВАНИЕ»?

ЧТО ВХОДИТ В ПОНЯТИЕ «ПРОГРАММИРОВАНИЕ»?

Слайд 24ПРОГРАМИРОВАНИЕ
СИНТАКСИС*
ПРИКЛАДНЫЕ
БИБЛИОТЕКИ
ПРАКТИКА
ПРОГРАММИРОВАНИЯ*
АЛГОРИТМЫ И
СТРУКТУРЫ ДАННЫХ*
ДИЗАЙН ПО
ГРУППОВАЯ РАБОТА
* Основные направления, рассматриваемые в нашем курсе

ПРОГРАМИРОВАНИЕСИНТАКСИС*ПРИКЛАДНЫЕБИБЛИОТЕКИПРАКТИКАПРОГРАММИРОВАНИЯ*АЛГОРИТМЫ ИСТРУКТУРЫ ДАННЫХ*ДИЗАЙН ПОГРУППОВАЯ РАБОТА* Основные направления, рассматриваемые в нашем курсе

Слайд 25Подготовка задач для решения на ПЭВМ
Этапы подготовки задачи:
Для решения любой

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

– формализация задачи;

– разработка алгоритма решения задачи;

– составление программы на одном из алгоритмических языков;

– трансляция программы;

– отладка программы на ПЭВМ;

Подготовка задач для решения на ПЭВМ Этапы подготовки задачи:Для решения любой задачи на ПЭВМ человек должен выполнить

Слайд 26Состоит в том, чтобы построить математическую модель, т. е. перейти oт

содержательной постановки задачи к ее строгому формальному описанию.

– формализация задачи;

– разработка алгоритма решения задачи;

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

– составление программы на одном из алгоритмических языков;

Необходимо для ввода алгоритма в память ПЭВМ.

– трансляция программы;

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

– отладка программы на ПЭВМ;

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

1

2

3

4

5

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

Слайд 27САМАЯ
БОЛЬШАЯ СЛОЖНОСТЬ программирования
кроется в переводе
смысла ситуации
в формальное описание
1
2
3
4
5

САМАЯБОЛЬШАЯ СЛОЖНОСТЬ программированиякроется в переводе смысла ситуации в формальное описание 12345

Слайд 28Для того, чтобы компьютер смог получить нужный результат, ему необходимо указать

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

Слайд 29Рабочее место программиста

Рабочее место программиста

Что такое shareslide.ru?

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


Для правообладателей

Яндекс.Метрика

Обратная связь

Email: Нажмите что бы посмотреть