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

Автор работы: Пользователь скрыл имя, 28 Февраля 2013 в 16:51, реферат

Описание

B очень похож на BCPL, сделанный более лаконичным за счет сокращения или удаления всех элементов, которые Кен Томпсон счел лишними или громоздкими. Руководство пользователя языка часто сравнивает его с Fortran, видимо, из-за большей популярности последнего и из-за встроенных возможностей взаимодействия с программами на Fortran.

Работа состоит из  1 файл

OAiP_Geneologicheskoe_drevo_Si.docx

— 17.60 Кб (Скачать документ)

 

Би (англ. B) — интерпретируемый язык программирования для мини-компьютеров, прямой потомок BCPL и предшественник C.

Язык B был разработан в AT&T Bell Telephone Laboratories и опубликован в 1969 году. Главным разработчиком языка был Кен Томпсон, содействие разработке оказывал Денис Ритчи. Позднее Стивен Джонсон (Stephen C. Johnson) значительно улучшил авторскую версию языка и добавил библиотеки.

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

B очень похож на BCPL, сделанный  более лаконичным за счет сокращения  или удаления всех элементов,  которые Кен Томпсон счел лишними  или громоздкими. Руководство  пользователя языка часто сравнивает  его с Fortran, видимо, из-за большей популярности последнего и из-за встроенных возможностей взаимодействия с программами на Fortran.

Единственный тип данных в языке B — слово; большинство  операторов трактуют его как целое  число, но в некоторых оно используется как адрес ячейки памяти. Также  переменные можно трактовать как  символы, инициализировать их символьными  константами и т.д. Чисел с плавающей  точкой в языке нет; важной частью языка являются восьмеричные числа (запись такого числа начинается с 0).

Программы состоят из наборов  функций, одна из которых, main, вызывается при запуске программы; завершение выполнения main завершает программу. Переменные могут быть объявлены как auto (локальные в пределах одной функции) и extrn (глобальные, объявляются и инициализируются за пределами функций). Переменные бывают скалярными и векторными (одномерные массивы постоянного размера). Строки — это векторы символов.

Язык включает в себя небольшой  набор библиотек, в том числе  С-подобные функции ввода-вывода, работы с файлами, манипуляции со строками, и стоящую особняком функцию callf, позволяющую вызвать функцию Fortran.

B использовался в ранних Unix-системах, на миникомпьютерах  DEC PDP-7 и PDP-11, а также на мейнфреймах Honeywell под управлением операционной системы GCOS. Позднее в Unix-системах его вытеснил C, и в настоящее время интерпретатор языка существует только для ОС GCOS8.

 

Появление и развитие языка С

 

Си (англ. С) — стандартизированный  процедурный язык программирования.

Язык C был разработан в  начале 1970-х годов сотрудниками Bell Labs Кеном Томпсоном и Денисом Ритчи как наследник языка B.

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

В 1978 году была опубликована книга “Язык программирования C”  Ритчи и Кернигана; описанный в ней язык стал неформальным стандартом языка, известным как K&R C.

Первый официальный стандарт языка был создан в 1989 году ANSI X3.159-1989 и в следующем году с незначительными  изменениями принят как ISO/IEC 9899:1990; он известен как ANSI C. Следующими стандартами  стали ISO 9899:1999 (C99) и ISO/IEC 9899:2011 (C11).

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

Особенности языка:

- минимальное количество  ключевых слов.

- большинство возможностей  языка вынесено в библиотеки.

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

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

- разрешено определение  пользовательских типов и составных  типов. 

- предоставляется низкоуровневый  доступ к памяти (через преобразование  машинных адресов в типизированные  указатели).

- процедуры являются частным  случаем функции, возвращающей  специальный тип void.

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

Приемник С. Язык С++

 

Си++ (англ. C++) — компилируемый строго типизированный язык программирования общего назначения. Поддерживает разные парадигмы программирования: процедурную, обобщённую, функциональную; наибольшее внимание уделено поддержке объектно-ориентированного программирования.

Разработка языка началась в 1979 году. Целью создания C++ было дополнение C возможностями, удобными для масштабной разработки ПО, с сохранением гибкости, скорости и портабельности C. Вместе с тем создатели C++ стремились сохранить совместимость с C: синтаксис первого основан на синтаксисе последнего, и большинство программ на C будут работать и как C++. Изначально новый язык назывался “C с классами”, но затем имя было изменено на C++ — это должно было подчеркнуть как его происходжение от C, так и его превосходство над последним.

Первый выпуск C++ для коммерческого  использования состоялся в 1985 году, вместе с публикацией книги “The C++ Programming Language”, которая на долгое время стала его неофициальным стандартом. В 1989 году вышла вторая версия языка в сопровождении книги “The Annotated C++ Reference Manual”.

В 1990-х годах язык стал одним из наиболее широко используемых языков программирования общего назначения. Первым официальным стандартом языка  стал ISO/IEC 14882:1998, более известный  как C++98. В 2003 году была принята его  дополненная версия, C++03, а в 2005 году был опубликован “Library Technical Report 1” (сокращенно TR1) — документ, описывающий расширения стандартной библиотеки. TR1 не является стандартом, но большинство актуальных компиляторов C++ поддерживает его. Наконец, в 2011 году был принят текущий стандарт, C++11.

Нововведениями C++ в сравнении  с C являются:

- поддержка объектно-ориентированного  программирования через классы. C++ предоставляет все четыре возможности  ООП — абстракцию, инкапсуляцию, наследование (в том числе и  множественное) и полиморфизм. 

- поддержка обобщённого программирования через шаблоны функций и классов;

- стандартная библиотека C++ состоит из стандартной библиотеки C (с некоторыми модификациями)  и библиотеки шаблонов (Standard Template Library, STL), которая предоставляет обширный набор обобщенных контейнеров и алгоритмов;

- дополнительные типы  данных;

- обработка исключений;

- виртуальные функции; 

- пространства имён;

- встраиваемые (inline) функции;

- перегрузка (overloading) операторов;

- перегрузка имён функций; 

- ссылки и операторы  управления свободно распределяемой  памятью.

 

 

Ресурсы

 

- http:// progopedia.ru

- http://ru.wikipedia.org


Информация о работе Языки программирования