История языков программирования

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

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 31.05.2015
Размер файла 22,1 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Содержание

Введение

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

2. Машинные языки, языки ассемблера и языки высокого уровня

3. История языка С

Заключение

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

Введение

С увеличением объёма вычислений появился первый счётный переносной инструмент - “Счёты”.

В начале 17 века возникла необходимость в сложных вычислениях. потребовались счётные устройства, способные выполнять большой объём вычислений с высокой точностью. В 1642 г. французский математик Паскаль сконструировал первую механическую счётную машину - “Паскалину”.

В 1830 г. английский учёный Бэбидж предложил идею первой программируемой вычислительной машины (“аналитическая машина”). Она должна была приводиться в действие силой пара, а программы кодировались на перфокарты. Реализовать эту идею не удалось, так как было не возможно сделать некоторые детали машины.

Первый реализовал идею перфокарт Холлерит. Он изобрёл машину для обработки результатов переписи населения. В своей машине он впервые применил электричество для расчётов. В 1930 г. американский учёный Буш изобрел дифференциальный анализатор - первый в мире компьютер.

Большой толчок в развитии вычислительной техники дала вторая мировая война. Военным понадобился компьютер, которым стал “Марк-1” - первый в мире цифровой компьютер, изобретённый в 1944 г. профессором Айкнем. В нём использовалось сочетание электрических сигналов и механических приводов. Размеры: 15 X 2,5 м., 750000 деталей. Могла перемножить два 23-х разрядных числа за 4 с.

В 1946 г. группой инженеров по заказу военного ведомства США был создан первый электронный компьютер - “Эниак”. Быстродействие: 5000 операций сложения и 300 операций умножения в секунду. Размеры: 30 м. в длину, объём - 85 м3., вес - 30 тонн. Использовалось 18000 эл. ламп.

Первая машина с хронимой программой - ”Эдсак” - была создана в 1949 г., а в 1951 г. создали машину “

Юнивак” - первый серийный компьютер с хронимой программой. В этой машине впервые была использована магнитная лента для записи и хранения информации

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

Компьютеры появились очень давно в нашем миpе, но только в последнее время их начали так усиленно использовать во многих отpаслях человеческой жизни. Ещё десять лет назад было редкостью увидеть какой-нибудь персональный компьютер -- они были, но были очень дорогие, и даже не каждая фирма могла иметь у себя в офисе компьютер. А теперь? Теперь в каждом третьем доме есть компьютер, который уже глубоко вошёл в жизнь самих обитателей дома.

Сама идея создания искусственного интеллекта появилась давным давно, но только в 20 столетии её начали приводить в исполнение. Сначала появились огромные компьютеры, которые были подчастую размером с огромный дом. Использование таких махин, как вы сами понимаете, было не очень удобно. Но что поделаешь? Но мир не стоял на одном месте эволюционного развития -- менялись люди, менялась их Среда обитания, и вместе с ней менялись и сами технологии, всё больше совершенствуясь. И компьютеры становились всё меньше и меньше по своим размерам, пока не достигли сегодняшних размеров.

Но человеку ведь тоже надо как-нибудь общаться с машиной -- ведь кому нужна неуправляемая машина? Сначала люди вели своё общение с компьютерам посредством перфокарт. Перфокарты -- это небольшие карточки, на которые нанесены ряды цифр. У компьютера имелся “дисковод”, в который вставлялись сами карты и он при помощи маленьких иголочек ставил дырочки на цифрах. Такое общение мало кому доставляло удовольствие -- ведь не очень удобно таскать с собой кучи перфокарт, которые после одного использования приходилось выбрасывать.

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

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

За время, прошедшее с 50-х годов, цифровая ЭВМ превратилась из “волшебного”, но при этом дорогого, уникального и перегретого нагромождения электронных ламп, проводов и магнитных сердечников в небольшую по размерам машину - персональный компьютер - состоящий из миллионов крошечных полупроводниковых приборов, которые упакованы в небольшие пластмассовые коробочки.

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

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

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

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

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

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

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

Мы часто жалуемся, что другие люди не понимают нас; но пока и сами персональные компьютеры не способны до конца понять нас, или понять, что мы хотим сказать с полуслова. И в течение какого-то периода времени нам придётся довольствоваться такими машинами, которые просто следуют нашим указаниям, исполняя их “с точностью до миллиметра”.

Для общения с компьютерами, ещё во времена перфокарт, тогдашние программисты использовали язык программирования, очень похожий на современный Ассемблер. Это такой язык, где все команды, поступающие к компьютеру пишутся подробно при помощи специальных слов и значков{?}.

В наше время усиленно используются языки программирования более высокого уровня, работать с которыми намного легче чем с Ассемблером, так как в них одно слово может заменять сразу несколько команд. И притом большинство языков программирования высокого уровня в названиях команд, используемых при общении с компьютером, используют эквиваленты, названные на английском языке, что, естественно, облегчает программирование. Но в них есть один минус по сравнению с языками, подобными Ассемблеру -- в Ассемблере все команды, поступаемые из программы чётко распределяются в памяти компьютера, занимая свободные места, тем самым значительно выигрывая в скорости; а языки высокого уровня не умеют этого, соответственно теряя в скорости исполнения программы. А в нашем сегодняшнем мире всем известно, что: “Время -- деньги”.

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

Большинства людей, по-видимому, считают, что термины “вычислительная машина” и “вычислительная техника” синонимами и связывают их с физическим оборудованием, как, например, микропроцессором, дисплеем, дисками, принтерами и другими истройствами, привлекающими внимание людей, когда человек видит компьютер. Хотя эти устройства и важны, всё-таки они составляют только “верхушку айсберга”. На начальном этапе использованаия современного компьютера мы имеем дело не с самим компьютером, а с совокупностью правил, называемых языками программироваания, на которых указываются действия, которые должен выполнять компьютер. Важное значение языка программирования подчёркивается тем фактом, что сама вычислительная машина может рассматриваться как аппаратный интерпретатор какого-нибудь конкретного языка, который называется машинным языком. Для обеспечения эффективной работы машины разработаны машинные языки, использование которых представляет известные трудностидля человека. Большинство пользователей не чувствуют этих неудобств благодаря наличию одного или нескольких языков, созданных для улучшения связи человека с машиной. Гибкость вычислительной машины проявляется в том, что она может исполнять программы-трансляторы (в общем случае онм называются компиляторами или интерпретаторами) для преобразования программ с языков, ориентированных на пользователей, в программы на машинном языке. (В свою очередь даже сами программы, игры, системные оболочки являются ни чем иным, как довольно простая программа-транслятор, которая по мере работы, или игры обращается при помощи своих команд к “компьютерным внутренностям и наружностям”, транслиуя свои команды в машинные языки. И всё это происходит в реальном времени.)

2. Машинные языки, языки ассемблера и языки высокого уровня

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

1. Машинные языки

2. Ассемблерные языки

3. Языки высокого уровня.

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

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

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

3. История языка С

Язык с берет свое начало от двух языков, BCPL и B. В 1967 году Мартин Ричардс разработал BCPL как язык для написания системного программного обеспечения и компиляторов. В 1970 году Кен Томпсон использовал В для создания ранних версий операционной системы UNIX на компьютере DECPDP-7. как в BCPL, так и в В переменные не разделялись на типы- каждое значение данных занимало одно слово в памяти и ответственность на различение, например, целых и действительных чисел целиком ложилась на плечи программиста.

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

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

Заключение

вычислительный интеллект программирование машинный

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

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

1. Том Сван “Освоение Turbo Assembler”, Диалектика, Киев, 1996 г.

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

3. Лекции Комлевой Нины Викторовны по предмету “Языки программирования и методы трансляции”

4.Х.М.Дейтел, Как программировать на С, Издательство Бином, Москва, 2000 г.

Размещено на Allbest.ru

...

Подобные документы

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

    презентация [6,3 M], добавлен 14.08.2013

  • Машинные коды и ассемблер. Первые языки программирования высокого уровня. Язык программирования FORTRAN. Достоинства и недостатки ALGOL. Научные и бухгалтерские программы. Основные принципы, которые соблюдались при создании языка программирования Basic.

    курсовая работа [407,4 K], добавлен 21.06.2014

  • История развития информационных технологий. Появление Интернета, браузеры. Основы web-программирования: классификация сайтов, языки программирования. Создание сайта для кафедры высшего учебного заведения: технология создания и руководство пользователя.

    дипломная работа [471,5 K], добавлен 23.04.2015

  • Использование языков программирования, работающих на стороне клиента. Теговые языки логической разметки документов. Скриптовые языки программирования. Работоспособность клиентских технологий. Функциональные интерактивные сайты и сроки их разработки.

    лабораторная работа [2,1 M], добавлен 27.04.2009

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

    презентация [1,2 M], добавлен 19.02.2014

  • Сравнительный анализ наиболее распространенных языков, их классификация, описание достоинств и недостатков. Использование процедур, функции и подпрограмм в языках программирования высокого уровня. Разработка и реализация программы "Бортовой компьютер".

    курсовая работа [329,8 K], добавлен 22.06.2014

  • Эволюция языков программирования от низкого уровня до современности. Языки программирования второго поколения - ассемблер. Императивные, функциональные, логические и объектно-ориентированные языки. Машинная независимость. Парадигмы программирования.

    презентация [353,5 K], добавлен 14.10.2013

  • Семантика языков программирования. Процедурные и объектно-ориентированные языки программирования. Стандартная библиотека шаблонов. Независимость байт-кода от операционной системы и оборудования и возможность выполнения Java-приложения на любом устройстве.

    реферат [50,5 K], добавлен 24.11.2009

  • Первые машины вычисления. Осуществление прорыва в области вычислительной техники. Процессоры пятого поколения. Развитие микропроцессоров Intel Pentium и Intel Pro. Языки программирования высокого уровня. Внутренняя оперативная память процессора.

    реферат [28,2 K], добавлен 07.10.2013

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

    курсовая работа [400,6 K], добавлен 10.11.2016

  • Классификация языков программирования. Использование циклических конструкций и выполнение итерационных процессов. Алгоритмические структуры циклов языков C, C++, Java, C#. Особенности современных языков программирования высокого уровня и их применение.

    курсовая работа [345,6 K], добавлен 13.11.2009

  • Основные этапы разработки программного обеспечения (пакета программ), анализ требований к системе. Метод пошаговой детализации. Языки программирования низкого уровня и высокого уровня (императивные, объектно-ориентированные, функциональные, логические).

    презентация [41,4 K], добавлен 13.10.2013

  • Языки программирования низкого и высокого уровней и среды реализации. Особенности процедурных, логических, объектно-ориентированных языков. Состав системы программирования: трансляторы, библиотеки и отладчик программ, компоновщик, средства редактирования.

    презентация [11,9 K], добавлен 23.10.2013

  • История развития и классификация высокоуровневых языков логического программирования. Определение понятий графического интерфейса, сетевых протоколов и моделей баз данных. Современные системы программирования компании Borland/Inprise и фирмы Microsoft.

    курсовая работа [72,3 K], добавлен 11.07.2011

  • Цель информационного программирования; алгоритмический язык как система обозначений и правил для единообразной и точной записи алгоритмов и их исполнения. Языки программирования низкого и высокого уровня; классификация и использование структуры данных.

    реферат [383,1 K], добавлен 07.01.2012

  • Оценка современного этапа развития компьютерных технологий. История развития, классификации, сведения и уровни языков программирования. Обзор современных языков программирования: Си, его разовидности, Паскаль, Фортран, Бейсик - тенденция их развития.

    курсовая работа [46,5 K], добавлен 22.12.2010

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

    презентация [873,4 K], добавлен 23.01.2013

  • Что такое язык программирования. Для чего нужны языки программирования. Какие существуют языки программирования. Фортран. Алгол. Кобол. Лисп. Бейсик. Форт. Паскаль. Ада. Си. Пролог. Что такое компилятор и интерпретатор.

    реферат [20,2 K], добавлен 27.05.2007

  • Понятия структурного программирования и алгоритма решения задачи. Краткая история развития языков программирования от машинных до языков ассемблера и языков высокого уровня. Процедурное программирование на C#. Методы и программы для моделирования.

    учебное пособие [1,7 M], добавлен 26.10.2010

  • Язык программирования как набор лексических и синтаксических правил, задающих внешний вид программы. Двоичное представления команд в универсальных программах и применение Ассамблера для создания макросов и меток. Разработка языков Фортран, Паскаль и Си.

    презентация [828,5 K], добавлен 10.05.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.