Реферат: Что такое язык программирования

                                     Содержание:

                                             

1) Введение                                                                                        стр.  1

2) Что такое языкпрограммирования                                              стр.  2

3) Для чего нужны языкипрограммирования                                 стр.  3

4) Какие существуют языкипрограммирования                          стр. 4 – 7

5) Что такое компилятор иинтерпретатор                                      стр.  8

6) Список использованнойлитературы                                           стр.  9


Введение

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

 

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

  Однако в течение 60-х цена на компьютеры стала падать так, что даже небольшиекомпании могли их себе позволить; скорость компьютеров всё увеличивалась инаступило время, когда они стали часто простаивать без задач. Чтобы этого непроисходило, стали вводить системы с разделением времени (time-sharing).

  В таких системах процессорное время «нарезалось», и все пользователи поочерёднополучали короткие отрезки этого времени. Машины были достаточно быстрыми длятого, чтобы в результате каждый пользователь за терминалом чувствовал себя так,будто работает с системой в одиночку. Машина же, в свою очередь, простаиваламеньше, поскольку выполняла не одну, а сразу много задач. Разделение временирадикально снижало стоимость машинного времени, поскольку одна машина могласовместно использоваться сотнями пользователей.

  В этих условиях — когда мощность стала дешева и доступна — создатели языковпрограммирования все больше стали задумываться об удобстве написанияпрограмм, а не только скорости их выполнения. «Мелкие» (атомарные) операции, выполняемые непосредственноустройствами машины, объединили в более «крупные», высокоуровневые операции ицелые конструкции, с которыми человеку куда проще и удобнее работать.


                                  Что такое язык программирования   

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

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

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

Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами. Задача: язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека компьютеру, в то время как естественные языки используются лишь для общения людей между собой. В принципе, можно обобщить определение «языков программирования» — это способ передачи команд, приказов, чёткого руководства к действию; тогда как человеческие языки служат также для обмена информацией. Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.

                    Для чего нужны языки программирования


   Процесс работы компьютеразаключается в выполнении программы, то есть набора вполне определённых командво вполне определённом порядке. Машинный вид команды, состоящий из нулей иединиц, указывает, какое именно действие должен выполнить центральныйпроцессор. Значит, чтобы задать компьютеру последовательность действий, которыеон должен выполнить, нужно задать последовательность двоичных кодовсоответствующих команд. Программы в машинных кодах состоят из тысячи команд.Писать такие программы – занятие сложное и утомительное. Программист долженпомнить комбинацию нулей и единиц двоичного кода каждой программы, а такжедвоичные коды адресов данных, используемых при её выполнении. Гораздо прощенаписать программу на каком-нибудь языке, более близком к естественному человеческомуязыку, а работу по переводу этой программы в машинные коды поручить компьютеру.Так возникли языки, предназначенные специально для написания программ, — языкипрограммирования.

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

  Всё множество языков программирования можно разделить на две группы: языкинизкого уровня и языки высокого уровня.

  К языкам низкого уровня относятся языки ассемблера (от англ. to assemble – собирать, компоновать). В языке ассемблераиспользуются символьные обозначения команд, которые легко понятны и быстрозапоминаются. Вместо последовательности двоичных кодов команд записываются ихсимвольные обозначения, а вместо двоичных адресов данных, используемых привыполнении команды, — символьные имена этих данных, выбранные программистом.Иногда язык ассемблера называют мнемокодом или автокодом.

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

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

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


             Какие существуют языки программирования                                                       Фортран

  Языки программирования стали появляться уже с середины 50-х годов. Одним из первыхязыков такого типа стал язык Фортран (англ. FORTRAN от FORmula TRANslator – переводчик формул), разработанный в 1957 году.Фортран применяется для описания алгоритма решения научно-технических задач спомощью ЦВМ. Так же, как и первые вычислительные машины, этот языкпредназначался, в основном, для проведения естественно-научных и математическихрасчётов. В усовершенствованном виде этот язык сохранился до нашего времени.Среди современных языков высокого уровня он является одним из наиболее используемыхпри проведении научных исследований. Наиболее распространены варианты Фортран-II,Фортран-IV, EASIC Fortran и их обобщения.

 

                                                         Алгол

  После Фортрана в 1958-1960 годах появился язык Алгол (Алгол-58, Алгол-60)(англ. ALGOL от ALGOrithmic Language – алгоритмический язык).Алгол был усовершенствован в 1964-1968 годах –Алгол-68. Алгол был разработан комитетом,в который входили европейские и американские учёные. Он относится к языкам высокого уровня (high-levellanguage) и позволяет легко переводить алгебраические формулы в программныекоманды. Алгол был популярен в Европе, в том числе СССР, в то время каксравнимый с ним Фортран был распространен в США и Канаде. Алгол оказал заметноевлияние на все разработанные позднее языки программирования, и, в частности, наязык Pascal. Этот язык так же, как и Фортран, предназначался длярешения научно-технических задач. Кроме того, этот язык применялся как средствообучения основам программирования – искусства составления программ.

  Обычно под понятием Алгол подразумевается язык Алгол-60, в то время как Алгол-68рассматривается как самостоятельный язык. Даже когда язык Алгол почти пересталиспользоваться для программирования, он ещё оставался официальным языком дляпубликации алгоритмов.

                                                          Кобол

  В 1959 – 1960 годах был разработан язык Кобол (англ. COBOL от COmmom BusinessOriented Language – общий язык, ориентированный на бизнес). Это языкпрограммирования третьего поколения, предназначенный, в первую очередь, дляразработки бизнес приложений. Также Коболпредназначался для решения экономических задач, обработки данных для банков,страховых компаний и других учреждений подобного рода. Разработчиком первогоединого стандарта Кобола являлась Грейс Хоппер (бабушка Кобола).

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

                                                           Лисп

  Почти одновременно с Коболом (1959 – 1960 гг.) в Массачусетском технологическоминституте был создан язык Лисп (англ. LISP от LISt Processing – обработка списков). Лисп основан на представлении программы системойлинейных списков символов, которые притом являются основной структурой данныхязыка. Лисп считается вторым после Фортрана старейшим высокоуровневым языкомпрограммирования. Этот язык широкоиспользуется для обработки символьной информации и применяется для созданияпрограммного обеспечения, имитирующего деятельность человеческого мозга.

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

   Основнойсмысл Лисп-программы «жизнь» в символьном пространстве: перемещение,творчество, запоминание, создание новых миров и т.д. Лисп как метафора мозга,символ, метафора сигнала: «Как происходит биологический анализ сигналовмозгом, как внешний фактор — физическое и химическое воздействие, являющеесядля организма раздражителем превращается в биологически значимый сигнал, зачастуюжизненно важный, определяющий все поведение человека или животного; и какпроисходит разделение разных сигналов на положительные, отрицательные ибезразличные, индифферентные. Сигнал это уже интегративное понятие. Онпредставляет собой опознавательный знак группы, комплексных раздражителей,связанных между собой общей историей и причинно следственными отношениями. Вэтом комплексе, системе раздражителей, сигнальный стимул сам является такжесоставляющим элементом и при иных обстоятельствах его роль может принадлежатьдругому стимулу из комплекса. В сигнале концентрируется весь прошлый опытживотного или человека.»[1]

                                                           Бейсик

  В середине 60-х годов (1963 г.) в Дартмутском колледже (США) был создан языкБейсик (англ. BASIC от Beginner’s Allpurpose Instruction Code – всецелевойсимволический код инструкций для начинающих). Со временем, когда сталипоявляться другие диалекты, этот «изначальный» диалект стали называть Dartmouth BASIC. Язык был основан частично на Фортран II и частично на Алгол-60,с добавлениями, делающими его удобным для работы в режиме разделения времени и,позднее, обработки текста и матричной арифметики. Первоначально Бейсик былреализован на мейнфрейме GE-265 с поддержкой множества терминалов. Вопрекираспространённому убеждению, в момент своего появления это был компилируемыйязык.

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

 

                                                           Форт

  В конце 60-х – начале 70-х годов появился язык Форт (англ. FOURTH– четвёртый). Этот язык стал применяться в задачах управления различнымисистемами после того, как его автор Чарльз Мур написал на нём программу,предназначенную для управления радиотелескопом Аризонской обсерватории.

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

                                                         Паскаль

  Появившийся в 1972 году язык Паскаль был назван так в честь великогофранцузского математика XVII века, изобретателя первой в мире арифметическоймашины Блеза Паскаля. Этот язык был создан швейцарским учёным, специалистом вобласти информатики Никлаусом Виртом как язык для обучения методампрограммирования. Паскаль – это язык программирования общего назначения.

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

  Язык Паскаль учит не только тому, как правильно написать программу, но и тому,как правильно разработать метод решения задачи, подобрать способы представленияи организации данных, используемых в задаче. С 1983 года язык Паскаль введён вучебные курсы информатики средних школ США.

                                                             Ада

   На основе языка Паскаль в конце 70-х годов был созданязык Ада, названный в честь одарённого математика Ады Лавлейс (Огасты АдыБайрон – дочери поэта Байрона). Именно она в 1843 году смогла объяснить мирувозможности Аналитической машины Чарльза Бэббиджа. Язык Ада был разработан позаказу Министерства обороны США и первоначально предназначался для решениязадач управления космическими полётами. Этот язык применяется в задачахуправления бортовыми системами космических кораблей, системами обеспеченияжизнедеятельности космонавтов в полёте, сложными техническими процессами.

   Ада — это структурный, модульный,объектно-ориентированный язык программирования, содержащий высокоуровневыесредства программирования параллельных процессов. Синтаксис Ады унаследован отязыков типа Algol или Паскаль, но расширен, а также сделан более строгим илогичным. Ада — язык со строгой типизацией, в нём исключена работа с объектами,не имеющими типов, а автоматические преобразования типов сведены к абсолютномуминимуму.

   Поутверждению Стефена Цейглера[2], разработка программного обеспеченияна Аде в целом обходится на 60 % дешевле, а разработанная программа имеет в 9раз меньше дефектов, чем при использовании языка Си.

                                                            Си

   В настоящее время популярным среди программистов является язык Си (С – буква английского алфавита). Язык Си берёт своё начало от  двух  языков — BCPL  и  B.  В  1967  году  Мартин  Ричардс разработал  BCPL  как  язык  для   написания   системного   программного   обеспечения   и компиляторов.  В  1970  году  Кен  Томпсон  использовал  В  для  создания  ранних   версий операционной системы UNIX на компьютере DEC PDP-7. Как в BCPL, так и  в В переменные  не разделялись  на  типы -  каждое  значение  данных  занимало   одно   слово   в   памяти   и ответственность на различение, например, целых и действительных чисел целиком ложилась  на плечи программиста.

   Язык Си был разработан (на основе В) Деннисом Ритчи из Bell Laboratories  и  впервые  был реализован в 1972 году на компьютере DEC PDP-11. Известность Си получил  в  качестве  языка ОС UNIX. Сегодня практически все основные операционные системы были написаны на Си  или С++. По прошествии двух десятилетий Си имеется в наличии на большинстве компьютеров. Он  не зависит от аппаратной части.

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

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

 

                                                         Пролог

   Ещё один язык, который считается языком будущего, был создан в начале 70-х годов группой специалистов Марсельского университета. Это язык Пролог. Своё название он получил от слов «ПРОграммирование на языке ЛОГики». В основе этого языка лежат законы математической логики. Как и язык Лисп, Пролог применяется, в основном, при проведении исследований в области программной имитации деятельности мозга человека. В отличие от описанных выше языков, этот язык не является алгоритмическим. Он относится к так называемым дескриптивным(от англ. descriptive – описательный) – описательным языкам. Дескриптивный язык не требует от программиста разработки всех этапов выполнения задачи. Вместо этого, в соответствии с правилами такого языка, программист должен описать базу данных, соответствующую решаемой задаче, и набор вопросов, на которые нужно получить ответы, используя данные из этой базы.

  В последние десятилетия в программировании возник и получил существенноеразвитие объектно-ориентированный подход. Это метод программирования,имитирующий реальную картину мира: информация, используемая для решения задачи,представляется в виде множества взаимодействующих объектов. Каждый из объектовимеет свои свойства и способы поведения. Взаимодействие объектов осуществляетсяпри помощи передачи сообщений: каждый объект может получать сообщения от другихобъектов, запоминать информацию и обрабатывать её определённым способом и, всвою очередь, посылать сообщения. Так же, как и в реальном мире, объекты хранятсвои свойства и поведение вместе, наследуя часть из них от родительскихобъектов.

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

  Первый объектно-ориентированный язык Simula-67 был создан как средство моделирования работыразличных приборов и механизмов. Большинство современных языковпрограммирования – объектно-ориентированные. Среди них последние версии языка Turbo-Pascal, C++, Ada и другие.

  В настоящее время широко используются системы визуального программированияVisualBasic, VisualC++, Delphiи другие. Они позволяют создавать сложные прикладныепакеты, обладающие простым и удобным пользовательским интерфейсом.


               Что такое компилятор и интерпретатор

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

   Транслятор – это программа, предназначенная дляперевода программы, написанной на одном языке программирования, в программу надругом языке программирования. Процесс перевода называется трансляцией.

   Тексты исходной и результирующей программ находятся впамяти компьютера.

   Примером транслятора является компилятор.

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

   Компилятор создаёт законченный результат – программу вмашинных кодах. Затем эта программа выполняется. Откомпилированный вариантисходной программы можно сохранить на диске. Для повторного выполнения исходнойпрограммы компилятор уже не нужен. Достаточно загрузить с диска в памятькомпьютера откомпилированный в предыдущий раз вариант и выполнить его.

   Существует другой способ сочетания процессовтрансляции и выполнения программы. Он называется интерпретацией. Сутьпроцесса интерпретации состоит в следующем. Вначале переводится в машинные коды,а затем выполняется первая строка программы. Когда выполнение первой строкиокончено, начинается перевод второй строки, которая затем выполняется и такдалее. Управляет этим процессом программа-интерпретатор.

   Интерпретатор – это программа, предназначеннаядля построчных трансляции и выполнения исходной программы. Такой процессназывается интерпретацией.

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

   Интерпретатор сообщает о найденных им ошибках послетрансляции каждой строки программы. Это значительно облегчает процесс поиска иисправления ошибок в программе, однако существенно увеличивает времятрансляции. Компилятор транслирует программу намного быстрее, чеминтерпретатор, но сообщает о найденных им ошибках после завершения компиляциивсей программы. Найти и исправить ошибки в этом случае труднее. Поэтомуинтерпретаторы рассчитаны, в основном, на языки, предназначенные для обученияпрограммированию, и используются начинающими программистами. Большинствосовременных языков предназначены для разработки сложных пакетов программ ирассчитаны на компиляцию.

   Иногда один и тот же язык может использовать икомпилятор, и интерпретатор. К числу таких языков относится, например, Бейсик.

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

[1]  — Ю.Г.Кратин. Анализ сигналов мозгом. 1975. 

[2]  — Stephen Zeigler. Comparing Development Costs of C and Ada.

                     Список использованной литературы:

1.    И.Т.Зарецкая, Б.Г. Колодяжный, А.Н. Гуржий, А.Ю. Соколов. Информатика 10-11 класс.- К.: «Форум», 2001 г.

2.    БерезинБ.И, Березин С.Б. Начальный курс программирования. – М., 1996 г.

3.    Х.М.Дейтел. Как программировать на С. – М.: «Бином», 2000 г.

4.    Интернет-страница:ru.wikipedia.org/wiki/LISP

5.    ВаграменкоЯ.А. и др. Основы информатики и вычислительной техники с применением клингвистике: Учеб. пособие. – М.: МОПИ, 1989г.

еще рефераты
Еще работы по информатике, программированию