Реферат: Основные компоненты ЭВМ. Идеи и основы сети Интернет
Один из первых языков программирования - Фортран (Formula
Translation) был создан в середине 50-х годов. Благодаря своей простоте и
тому, что на этом языке накоплены большие библиотеки программ Фортран и в наши дни
остается одним из самых распространенных. Он используется для инженерных и научных
расчетов, для решения задач физики и других наук с развитым математическим аппаратом.
Для решения экономических задач был создан язык программирования
- Кобол.
Расширение областей применения ЭВМ влечет за собой создание языков,
ориентированных на новые сферы применения: Снобол - алгоритмический язык
для обработки текстовой информации, Лисп - алгоритмический язык для обработки
символов. Лисп находит широкое применение в исследованиях по созданию искусственного
интеллекта.
В 1968 г. был объявлен конкурс на лучший язык программирования
для обучения студентов. Победителем стал язык Алгол-68, но широкого распространения
не получил. Для этого конкурса Никлаус Вирт создал язык Паскаль, достаточно
простой, удобный, с наличием мощных средств структурирования данных. Хотя Паскаль
был разработан как язык для обучения программированию, он впоследствии получил широкое
развитие и в настоящее время считается одним из самых используемых языков. Для обучения
младших школьников Самуэлем Пайпертом был разработан язык Лого. Он отличается
простотой и богатыми возможностями.
Широкое распространение в школах в качестве обучающего языка
получил язык Бейсик, позволяющий взаимодействовать с ЭВМ в режиме непосредственного
диалога. Спустя много лет после изобретения Бейсика, он и сегодня самый простой
для освоения из десятков языков общецелевого программирования.
Необходимость разработки больших программ, управляющих работой
ЭВМ, потребовала создания специального языка программирования СИ в начале
70-х г. Он является одним из универсальных языков программирования. В отличии от
Паскаля, в нем заложены возможности непосредственного обращения к некоторым машинным
командам и к определенным участкам памяти компьютера. Си широко используется как
инструментальный язык для разработки операционных систем, трансляторов, баз данных
и других системных и прикладных программ. Си - это язык программирования общего
назначения, хорошо известный своей эффективностью, экономичностью, и переносимостью.
Во многих случаях программы, написанные на Си, сравнимы по скорости с программами,
написанными на языке Ассемблера. При этом они имеют лучшую наглядность и их более
просто сопровождать. Си сочетает эффективность и мощность в относительно малом по
размеру языке.
Появление функционального программирования привело к созданию
языка Пролог. Этот язык программирования разрабатывался для задач анализа
и понимания естественных языков на основе языка формальной логики и методов автоматического
доказательства теорем.
В 80-х г.20 века был создан язык Ада. Этот язык в дополнение
к классическим свойствам, обеспечивает программирование задач реального времени
и моделирования параллельного решения задач.
Существуют различные классификации языков программирования.
По наиболее распространенной классификации все языки программирования делят на языки
низкого, высокого и сверхвысокого уровня.
В группу языков низкого уровня входят машинные языки и
языки символического кодирования: (Автокод, Ассемблер). Операторы этого языка
- это те же машинные команды, но записанные мнемоническими кодами, а в качестве
операндов используются не конкретные адреса, а символические имена. Все языки низкого
уровня ориентированы на определенный тип компьютера, т.е. являются машинно-зависимыми.
Машинно-ориентированные языки - это языки, наборы операторов и изобразительные
средства которых существенно зависят от особенностей ЭВМ (внутреннего языка, структуры
памяти и т.д.).
Следующую, существенно более многочисленную группу составляют
языки программирования высокого уровня. Это Фортран, Алгол, Кобол, Паскаль,
Бейсик, Си, Пролог и т.д. Эти языки машинно-независимы, т.к. они ориентированы
не на систему команд той или иной ЭВМ, а на систему операндов, характерных для записи
определенного класса алгоритмов. Однако программы, написанные на языках высокого
уровня, занимают больше памяти и медленнее выполняются, чем программы на машинных
языках.
К языкам сверхвысокого уровня можно отнести лишь Алгол-68
и APL. Повышение уровня этих языков произошло за счет введения сверхмощных операций
и операторов.
Другая классификация делит языки на вычислительные и языки
символьной обработки. К первому типу относят Фортран, Паскаль, Алгол, Бейсик,
Си, ко второму типу - Лисп, Пролог, Снобол и др.
В современной информатике можно выделить два основных направления
развития языков программирования: процедурное и непроцедурное.
Процедурное программирование возникло на заре вычислительной
техники и получило широкое распространение. В процедурных языках программа явно
описывает действия, которые необходимо выполнить, а результат задается только способом
получения его при помощи некоторой процедуры, которая представляет собой определенную
последовательность действий.
Среди процедурных языков выделяют в свою очередь структурные
и операционные языки. В структурных языках одним оператором записываются
целые алгоритмические структуры: ветвления, циклы и т.д. В операционных языках для
этого используются несколько операций. Широко распространены следующие структурные
языки: Паскаль, Си, Ада, ПЛ/1. Среди операционных известны Фортран, Бейсик, Фокал.
Непроцедрное (декларативное) программирование появилось
в начале 70-х годов 20 века, но стремительное его развитие началось в 80-е годы,
когда был разработан японский проект создания ЭВМ пятого поколения, целью которого
явилась подготовка почвы для создания интеллектуальных машин. К непроцедурному программированию
относятся функциональные и логические языки.
В функциональных языках программа описывает вычисление
некоторой функции. Обычно эта функция задается как композиция других, более простых,
те в свою очередь разлагаются на еще более простые и т.д. Один из основных элементов
в функциональных языках - рекурсия, то есть вычисление значения функции через
значение этой же функции от других элементов. Присваивания и циклов в классических
функциональных языках нет.
В логических языках программа вообще не описывает
действий. Она задает данные и соотношения между ними. После этого системе можно
задавать вопросы. Машина перебирает известные и заданные в программе данные и находит
ответ на вопрос. Порядок перебора не описывается в программе, а неявно задается
самим языком. Классическим языком логического программирования считается Пролог.
Построение логической программы вообще не требует алгоритмического мышления, программа
описывает статические отношения объектов, а динамика находится в механизме перебора
и скрыта от программиста.
Можно выделить еще один класс языков программирования - объектно-ориентированные
языкивысокого уровня. На таких языках не описывают подробной последовательности
действий для решения задачи, хотя они содержат элементы процедурного программирования.
Объектно-ориентированные языки, благодаря богатому пользовательскому интерфейсу,
предлагают человеку решить задачу в удобной для него форме. Примером такого языка
может служить язык программирования визуального общения Object Pascal.
Языки описания сценариев, такие как Perl, Python, Rexx,
Tcl и языки оболочек UNIX, предполагают стиль программирования, весьма отличный
от характерного для языков системного уровня. Они предназначаются не для написания
приложения с нуля, а для комбинирования компонентов, набор которых создается заранее
при помощи других языков. Развитие и рост популярности Internet также способствовали
распространению языков описания сценариев. Так, для написания сценариев широко употребляется
язык Perl, а среди разработчиков Web-страниц популярен JavaScript.
7. Операционные системы
Операционная система - это комплекс программ, обеспечивающих
управление работой компьютера и его взаимодействие с пользователем.
С точки зрения человека операционная система служит посредником
между человеком, электронными компонентами компьютера и прикладными программами.
Она позволяет человеку запускать программы, передавать им и получать от них всевозможные
данные, управлять работой программ, изменять параметры компьютера и подсоединённых
к нему устройств, перераспределять ресурсы. Работа на компьютере фактически является
работой с его операционной системой. При установке на компьютер только операционной
системы (ОС) ничего содержательного на компьютере также сделать не удастся. Для
ввода и оформления текстов, рисования графиков, расчёта зарплаты или прослушивания
лазерного диска нужны специальные прикладные программы. Но и без ОС ни одну прикладную
программу запустить невозможно.
Операционная система решает задачи, которые можно условно разделить
на две категории:
во-первых, управление всеми ресурсами компьютера;
во-вторых, обмен данными между устройствами компьютера, между
компьютером и человеком.
Кроме того, именно ОС обеспечивает возможность индивидуальной
настройки компьютера: ОС определяет, из каких компонентов собран компьютер, на котором
она установлена, и настраивает сама себя для работы именно с этими компонентами.
Ещё не так давно работы по настройке приходилось выполнять пользователю
вручную, а сегодня производители компонентов компьютерной техники разработали протокол
plug-and-play (включил - заработало). Этот протокол позволяет операционной системе
в момент подключения нового компонента получить информацию о новом устройстве, достаточную
для настройки ОС на работу с ним.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8 |