
- •Вопрос 1-2
- •Вопрос 3-4
- •Вопрос 5. Правила выполнения арифметических операций в двоичной системе счисления. Прямой, обратный и дополнительный коды.
- •Вопрос 6. Бит, байт, битовый набор. Двоичное кодирование.
- •Вопрос 7. Представление целых чисел в компьютере.
- •Вопрос 8. Представление вещественных чисел в компьютере.
- •Вопрос 9
- •Вопрос 10
- •Вопрос 11
- •Вопрос 12
- •Вопрос 13. Cтруктура персонального компьютера
- •Вопрос 15.Программное обеспечение
- •Вопрос 16 прикладное программное обеспечение
- •По сфере применения
- •Вопрос 19. В процессе подготовки и решения на компьютере научно-технических задач можно выделить следующие этапы:
- •22. Графическое представление алгоритма. Блок-схема алгоритма и ее элементы. Основные правила составления блок-схемы алгоритма
- •23. Структурное программирование. Декомпозиция алгоритма. Типы данных. Идентификаторы (константы, переменные, массивы).
- •24. Линейные алгоритмы. Разветвляющиеся алгоритмы
- •Разветвляющиеся алгоритмы
- •25. Циклические алгоритмы и их типы. Алгоритмы со структурами вложенных циклов. Циклические алгоритмы
- •Алгоритмы со структурами вложенных циклов
- •26. Языки программирования, их эволюция и классификация. Характеристики поколений языков программирования.
- •Вопрос 27(Элементы языка программирования)
- •Вопрос 28(Структура программы. Этапы разработки приложения. Среда программирования. Трансляция.).
- •Вопрос 29(ооп. Принципы ооп)
- •Вопрос 30(Понятие класса и объекта. Свойства объекта. Управление объектом (событие, метод)).
26. Языки программирования, их эволюция и классификация. Характеристики поколений языков программирования.
Первые языки программирования были очень примитивными и мало чем отличались от формализованных упорядоченных последовательностей единиц и нулей, понятных компьютеру. Использование таких языков было крайне неудобно с точки зрения программиста, так как он должен был знать числовые коды всех машинных команд, должен был сам распределять память под команды программы и данные.
Для того, чтобы облегчить общение человека с ЭВМ были созданы языки программирования типа Ассемблер. Переменные величины стали изображаться символическими именами. Числовые коды операций заменились на мнемонические обозначения, которые легче запомнить. Язык программирования приблизился к человеческому языку, и отдалился от языка машинных команд.
Один из первых языков программирования – Фортран (Formula Translation) был создан в середине 50-х годов. Благодаря своей простоте и тому, что на этом языке накоплены большие библиотеки программ Фортран и в наши дни остается одним из самых распространенных. Он используется для инженерных и научных расчетов, для решения задач физики и других наук с развитым математическим аппаратом.
В 1968 г. был объявлен конкурс на лучший язык программирования для обучения студентов. Победителем стал язык Алгол-68, но широкого распространения не получил. Для этого конкурса Никлаус Вирт создал язык Паскаль, достаточно простой, удобный, с наличием мощных средств структурирования данных. Хотя Паскаль был разработан как язык для обучения программированию, он впоследствии получил широкое развитие и в настоящее время считается одним из самых используемых языков. Для обучения младших школьников Самуэлем Пайпертом был разработан язык Лого. Он отличается простотой и богатыми возможностями.
Широкое распространение в школах в качестве обучающего языка получил язык Бейсик, позволяющий взаимодействовать с ЭВМ в режиме непосредственного диалога. Спустя много лет после изобретения Бейсика, он и сегодня самый простой для освоения из десятков языков общецелевого программирования.
Первое поколение Начало 1950-х годов - язык первых компьютеров. Первый язык ассемблера, созданный по принципу «одна инструкция - одна строка». Основная отличительная особенность: ориентирование на конкретный компьютер. Второе поколение Конец 1950-х - начало 1960-х г.г. Разработан символьный ассемблер, в котором появилось понятие переменной. Это первая полноценная язык. Основная отличительная особенность: ориентирование на абстрактный компьютер с такой же системой команд. Третье поколение 1960-е г.г. - Языки программирования высокого уровня. Их характеристики: относительная простота; независимость от конкретного компьютера; возможность использования мощных синтаксических конструкций. Простота языка позволяет писать небольшие программы и людям, которые не являются профессиональными программистами. Основная отличительная особенность языка третьего поколения: ориентирование на алгоритм (алгоритмические языки). Примеры: Си, Паскаль, Джава, Бейсик, и многие другие. Всего в мире существует около 200 популярных языков программирования третьего уровня. Четвертое поколение Начало 1970-х г.г. до сегодняшнего времени. Создаются языки, предназначенные для реализации крупных проектов. Проблемно-ориентированные языки, оперирующие конкретными понятиями узкой области. Как правило, в такие языки встраивают мощные операторы, позволяющие одной строкой описывать функции, для описания которых языках младших поколений потребовалось бы сотни или даже тысячи строк исходного кода. Часто относят: SQL, SGML ( HTML, XML ), Prolog, и многие другие узкоспециализированных декларативных языков. Правда ряд языков, которые относят к четвертому поколению, не являются языками программирования как таковыми. Например SQL является языком запросов к базам данных, HTML является языком разметки гипертекста, а не полноценными языками программирования, скорее они выступают своеобразными специализированными дополнениями к языкам программирования. Тоже самое касается XML. Основная отличительная особенность языка четвертого поколения: приближение к человеческой речи (декларативные языки). Некоторые языки имеют черты одновременно и третьего и четвертого поколений. Пятое поколение Пятого поколения языков программирования пока не существует.