Файл: История возникновения и развития языков программирования C(C++) и Java».pdf

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

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

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

Добавлен: 30.03.2023

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

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

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

ВВЕДЕНИЕ

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

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

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

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

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

В середине прошлого века все начиналось с записи программ в форме отверстий на специальных картонных карточках – перфокартах. Современные концепции программирования – объектно-ориентированное программирование и модель компонентных объектов COM+.

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

Одним из наиболее популярных сегодня языков программирования высокого уровня является язык программирования C и его современные диалекты C++, C#. На этом языке разрабатывается как прикладное, так и системное программное обеспечение. Он является очень мощным и гибким инструментом современного программиста. Рядом с ним по праву ставят язык программирования высокого уровня Java, более молодой, но также очень популярный язык с высоким потенциалом развития.

Актуальность курсовой работы состоит в полезности изучения истории появления и формирования языков программирования C (C++) и Java для понимания тенденций развития современного программирования.


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

Предметом исследования курсовой работы является история появления и развития языков программирования C(C++) и Java.

Цель курсовой работы – изучение истории появления и формирования языков программирования C(C++) и Java, а также перспектив их развития в контексте развития вычислительной техники.

Задачи курсовой работы:

  • изучить историю появления языка программирования C и его назначение;
  • изучить историю появления языка программирования высокого уровня Java и его назначение;
  • сравнить языки программирования C(C++) и Java с точки зрения реализации основных алгоритмических конструкций;
  • выполнить анализ полученных результатов.

1 УСТРОЙСТВО СОВРЕМЕННОГО КОМПЬЮТЕРА

1.1 Аппаратура современного персонального компьютера

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

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

Основные из принципов фон Неймана:

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

Архитектура фон Неймана представлена на рисунке 1.

Рисунок 1 - Архитектура фон Неймана

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

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

Все внешние (периферийные) устройства присоединяются к разъемам, расположенным на системной (материнской) плате, которая является основным аппаратным компонентом компьютера. На системной плате реализована магистраль обмена информацией, расположены разъемы для установки оперативной памяти и процессора, а также слоты для установки контроллеров внешних устройств.

Материнская плата представлена на рисунке 2.

Рисунок 2 – Системная плата компьютера

Для обмена информацией между процессором, внутренней памятью и периферийными устройствами, служит системная шина (магистраль), в состав которой входят:

  • шина данных;
  • шина адреса;
  • шина управления.

Сигналы, определяющие характер обмена информацией по магистрали, передаются по шине управления.

Шина адреса необходима для обмена информацией между оперативной памятью и процессором.

По шине данных идет обмен данными между внутренними и внешними устройствами.

Схематическая иллюстрация магистрально-модульного устройства компьютера представлена на рисунке 3.

Рисунок 3 - Магистрально-модульное устройство компьютера

1.2 Программное обеспечение современного персонального компьютера

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

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

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


  • системное программное обеспечение (системные программы);  
  • прикладное программное обеспечение (прикладные программы);  
  • инструментальное обеспечение (инструментальные системы).

Классификация программного обеспечения представлена на рисунке 4.

Рисунок 4 – Классификация программного обеспечения

К системному программному обеспечению относят программы, которые управляют работой узлов компьютера и реализуют разные вспомогательные (сервисные) функции, такие, как:

  • создание резервных копий информации
  • управление ресурсами компьютера
  • проверка исправности компонентов компьютера
  • предоставление справочной информации о ПК.

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

Основное место среди системных программ принадлежит операционным системам.

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

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

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

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

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

Инструментальное программное обеспечение состоят из:

  • систем программирования;
  • интегрированных сред разработки приложений;
  • средства моделирования программного обеспечения.

Системы программирования основаны на использовании одного из языков программирования – например, Basic, C++, Java, Pascal и др.

Система программирования, как правило, содержит:

  • редактор текстов (обеспечивает создание и редактирование программного кода на исходном языке программирования (исходных программ);
  • транслятор;
  • динамические и статические библиотеки подпрограмм.

Интегрированные среды разработки приложений (IDE) как правило имеют включают средства визуального программирования и позволяют вести разработку на нескольких языках программирования высокого уровня.

Системы моделирования позволяют решить широкий спектр задач – от математического моделирования (Matlab, MathCAD) до моделирования бизнес-процессов (IBM Rational Rose, ARIS Express и др.).

1.3 Инструментальное программное обеспечение

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

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

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

К достоинствам машинного языка относят высокую скорость выполнения программы и полный доступ ко всем аппаратным ресурсам ЭВМ. Язык машинных кодов – это язык низкого уровня.

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

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

Сегодня существует и используется большое количество языков программирования высокого уровня как универсальных, так и специализированных. Классификация языков программирования представлена на рисунке 5.

Рисунок 5 – Классификация языков программирования

Из классификации видно, что язык C появился как машинно-ориентированный язык программирования. В процессе развития языка его уровень становился все более абстрактным, и современные версии его поддерживают все актуальные концепции разработки программного обеспечения. Например, языки программирования C++ и C# являются объектно-ориентированными языками программирования высокого уровня, и состоят в одной группе языков с Java.