Добавлен: 23.04.2023
Просмотров: 485
Скачиваний: 2
СОДЕРЖАНИЕ
Глава 1. История возникновения ЭВМ и программирования
1.1 Понятие и сущность термина программирование
1.2 Предпосылки возникновения ЭВМ и алгоритмов для управления
1.3 Становление программирования в России как научной дисциплины
Глава 2. Русские программисты, внесшие вклад в историю развития программирования
Первые разработки ЭВМ в СССР, использование машинных кодов
2.3 Мировое признание деятельности А.И. Китова
Глава 3. Развитие российской индустрии программирования
3.1 Языки программирования, созданные в России
3.2 Выдающиеся лица в области программирования в РФ
3.3 Идеологические проблемы кибернетики и математической логики в СССР
Введение
Актуальность исследования. Россия является государством с огромной территорией и большими запасами природных ресурсов. Наиболее важными составляющими ВВП России является топливно-энергетический комплекс, экономически индустрия программирования практически незаметна. Однако помимо лидерства на товарном рынке Россия занимает одну из первых позиций в мире по числу технических специалистов. Согласно данным World Bank/UNESCO, более миллиона человек в стране работают в сфере научных исследований. У РФ есть все шансы, чтобы приумножить силу на международном рынке программирования.
Отечественное программирование берёт отсчет с 1950-х годов, в то время программирование предназначалось для решения военных и промышленных задач правительства. Первые успехи советского программирования обусловлены тем, что советская экономика всегда была индустриализованной и ориентированной на развитие технической составляющей. Данный вид деятельности не был рассчитан на покрытие бытовых потребностей населения. Что нельзя сказать о некоторых странах. К примеру, еще в 60-е годы, в США и Японии начался процесс информатизации. Это повлияло на разработку и распространение соответствующих систем программирования, которые получили признания на международном уровне.
Нехватка квалифицированного персонала является одной из основных проблем в процессе развития советского программирования. Растущая потребность в программистах была частично решена перепрофилированием математиков и физиков на изучение информатики. 50-е годы связаны с началом развития русских языков программирования. Количество специалистов в области программирования было очень мало, так как сфера программирования была весьма ограничена. Система советского образования также не могла похвастаться масштабным преподаванием соответствующих дисциплин, дающих знания в области языков программирования.
Однако к концу 60-х годов советские программистами вышли на мировой уровень в области разработки промышленного программного обеспечения и научных исследований. Первыми продуктами, принадлежащими к категории системного ПО, стали трансляторы – ассемблеры и автокоды на Западе, и программирующие программы в России.
В процессе перехода к рыночной экономике большинство существующих на тот момент структур рухнуло, что привело, в частности, к радикальным изменениям в существующей аппаратной платформе. Этот переход создал необходимость в услугах, например, в создании программ и системной интеграции, которые предлагались молодыми частными компаниями.
Современный этап отечественного программирования в основном ориентирован на удовлетворение реальных потребностей массового пользователя. Возникает противоречие исследования: с одной стороны, Россия в советские годы славилась своими «умами», которые внесли колоссальный вклад в развитие программирования, в том числе, и на международном уровне, особенно, в программировании для военной обороны страны, с другой стороны, сегодня программирование в России ассоциируется всего лишь с небольшими разработками для местного назначения (например, программа 1С).
Все вышеперечисленное определило актуальность выбранной темы.
Объект исследования - программирование как научная отрасль.
Предмет исследования – программирование в России.
Цель исследования – исследование и анализ истории развития программирования в России для выявления современного состояния и перспектив развития данной отрасли.
Поставленная цель подразумевает решение следующих задач исследования:
- Рассмотреть понятие и сущность программирования.
- Проанализировать наличие языков программирования, основанных на русском языке.
- Изучить вклад российских программистов в развитие программирования.
- Рассмотреть основные этапы развития отечественного программирования.
- Проанализировать современное состояние программирования в России и определить тенденции для дальнейшего развития.
В курсовой работе использованы труды А.П. Ершова, А.А. Ляпунова, А.И. Китова и др.
В данной работе применялись общенаучные теоретические и эмпирические методы анализа и синтеза, использованы индуктивный и дедуктивный методологические подходы.
Курсовая работа состоит из введения, трех глав, заключения, списка использованной литературы. В первой главе представлены теоретические аспекты программирования, раскрыто понятие и сущность.
Вторая глава посвящена рассмотрению вклада российских программистов в историю развития программирования.
В третьей главе приведены основные этапы развития программирования в России, а также сделан вывод о современном состоянии данной отрасли и основной тенденции развития.
В заключении подведены общие результаты исследования и сделаны основные выводы по проделанной работе.
Глава 1. История возникновения ЭВМ и программирования
1.1 Понятие и сущность термина программирование
Программирование - это процесс написания компьютерных программ и программного обеспечения с использованием языков программирования.
Другими словами программирование рассматривается как перекодировка - реализация взаимосвязанных алгоритмов на языке программирования.
В более широком понятии, программирование - это система создания программ, то есть разработка программного обеспечения.
Современное состояние отрасли диктует следующее понятие «программы» - описание на языке программирования структур данных и алгоритм решения задачи, который автоматически переводится с помощью специальной программы-переводчика (компилятора или интерпретатора) на командный язык компьютера для последующего исполнения. Можно сказать, что компьютерная программа является одним из способов реализации концепции алгоритма, а язык программирования является средством описания алгоритмов. Компьютерная программа обладает собственными элементами данных, с которыми она выполняет действия, и которые являются ее неотъемлемой частью.
Алгоритмическая составляющая программы — описание определенной последовательности исполняемых действий — обычно состоит из операторов, определяющих эту последовательность действий. Программа основана на определенном наборе команд и операций над данными (арифметические действия, присваивание значения переменной и т. д.) соответствующий набору команд процессора, на котором он выполняется. [12]
Структура данных - это тип представления данных в программе, описание задумки пользователя о представлении данных. Выбор правильного представления данных является одним из основных вопросов при проектировании программы. В этом случае представление данных понимается их описание на языке программирования в виде констант и переменных различной структуры. При решении задачи на компьютере, анализируя исходные данные программы и ее результат, необходимо выбрать экономичный алгоритм решения, который определит представление исходных, промежуточных и конечных данных.
Связь между алгоритмом и данными в программе не простая и линейная. Процесс работы любой программы можно анализировать с двух точек зрения: как последовательность команд, которые содержат информацию об операндах (данных), которые они обрабатывают - поток команд (поток управления). С другой стороны, любой элемент данных может рассматриваться как результат действий с исходными данными и как источник данных (операнд) для последующих результатов, то есть как источник данных. Программа также имеет логическую последовательность вычислений (преобразований данных), которая называется потоком.
Программирование включает в себя:
- анализ;
- разработка алгоритма (проектирование);
- кодирование и компиляция - написание исходного кода программы и преобразование его в исполняемый код с помощью компилятора;
- тестирование и отладка - обнаружение и устранение ошибок;
- техническое обслуживание. [11]
Одной из важнейших методик подразделения языков программирования является их принадлежность к одному из стилей, значительными из которых являются следующие: процедурный, функциональный, логический, объектно-ориентированный.
Таким образом, большая часть работы программиста связана с написанием исходного кода на одном из языков программирования. Различные языки программирования поддерживают разные стили программирования (так называемые парадигмы программирования). Частью искусства программирования является выбор одного из языков, который наилучшим образом соответствует поставленной задаче. Различные языки требуют разного уровня внимания программиста к деталям при реализации алгоритма, что часто приводит к компромиссу между простотой и производительностью (или между временем программиста и временем пользователя).
1.2 Предпосылки возникновения ЭВМ и алгоритмов для управления
Рассмотрим основные вехи в истории устройств, которые стали предпосылками для появления ЭВМ. [12]
Для визуализации информации отразим данные в таблице 1.
Таблица 1 – Основные предпосылки возникновения ЭВМ
|
Год |
Событие |
|
205 год до н.э. (150 год до н.э.) |
Антикитерский механизм из Древней Греции – калькулятор. |
|
1206г. |
Создание автомата-гуманоида. |
|
1500г. |
Была создана схема подобного арифмометру механизма (Леонардо да Винчи) |
|
1623г. |
Еще один вариант арифмометра был создан Вильгельмом Шиккардом. |
|
1804г. |
Создание жаккардового ткацкого станка. |
|
19 июля 1843 года |
Чарлз Бэббидж разработал «Аналитическую машину» — первая программируемая вычислительная техника |
|
1843г. |
Графиня Ада Августа Лавлейс написала первую в мире программу для Аналитической машины. |
Анализируя таблицу 1, можно с уверенностью отметить тот факт, что люди уже давно проявляют большой интерес к возможностям программирования.
Первая электронно-вычислительная машина на основе электронных вакуумных трубок с нитью накала была создана по заказу артиллеристов в Университете Пенсильвании в 1946 году - машина ENIAC (электронный числовой интегратор и компьютер).[12]
Основные принципы организации ЭВМ по Дж. Фон Нейману:
1. Двоичная кодировка.
2. Управление программой.
3. Хранения программы.
4. Единообразия представления чисел и команд.
5. Иерархии памяти.
6. Обращения к основной памяти.
Структура ЭВМ, предложенная Дж. фон Нейманом, состоит из следующих элементов: управляющее устройство, арифметическое устройство, основную (оперативную) и внешнюю память, устройство ввода программ и данных, устройство вывода результатов расчетов, пульт ручного управления. [11]
Структура фон-неймановской ЭВМ показана на рис. 1.
Рисунок 1 – Структура фон-неймановской ЭВМ
Начиная с 1950 г. каждое десятилетие значительно обновлялись конструктивно-технологические и программно-алгоритмические принципы построения и использования ЭВМ. В связи с этим правомерно говорить о поколениях вычислительных машин. Условно каждому поколению можно отвести 10 лет. Таким образом, данный этап развития программирования можно назвать началом становления программирования как научной дисциплины.
1.3 Становление программирования в России как научной дисциплины
Формирование программирования как научной дисциплины происходило в Советском Союзе быстрыми темпами, что было связано с необходимостью догонять глобальные тенденции, отставание от которых возникло из-за масштабов Второй Мировой войны. Основной причиной быстрого развития стала поддержка партией проектов в этом направлении. Руководство страны интересовалось техническим прогрессом советской науки, особенно тех областей, которые можно было бы использовать в оборонной промышленности. Многие из источников информации, в том числе программирование и разработка компьютеров, были засекречены и могут быть доступны человеку «без допуска» только после цензуры и значительного сокращения содержания.[10]