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

Язык как средство общения. Необходимость создания языков программирования

Компьютер - инструмент для обработки информации. Чтобы компьютер мог обработать информацию, нужно составить для него алгоритм, выполняя который ком­пьютер решит задачу. На каком языке должен быть описан алгоритм, чтобы компью­тер мог его понять? Язык - одно из самых великих творений человечества. Он является важнейшим средством общения, тонким и гибким инструментом, с помощью которого формируется и выражается мысль Важнейшая функция языка - функция общения или коммуникативная (от латинского "communicatio" - сообщение).

Принято считать, что сейчас существует 2795 языков и около 3-х тысяч диалек­тов. Известны еще языки "мертвые" - латинский, древнегреческий, хеттский, арамей­ский и другие. Воистину, как сказал Вольтер," различие языков - одно из величайших несчастий бытия". К одиннадцати наиболее распространенным языкам относятся: анг­лийский, арабский, индонезийский, испанский, китайский, немецкий, португальский, русский,хинди и японский.

Слов в каждом языке меньше, -чем понятий, и поэтому приходится совершенно разные понятия обозначать одинаково. Это приводит к многозначности слов. Напри­мер, если вы возьмете " Словарь русского языка " Ожегова, то обнаружится, что слово "идет" имеет 26 значений. Вот некоторые из них:

Облака идут на север. Перемещаться.

Шляпа тебе идет. Быть к лицу.

Поезд идет через час. Отправляться.

Идет снег. Падают осадки.

Пенсия идет сама собой. Выплачивается.

Идут слухи. Распространяться.

Идет весна. Наступает.

Споем? Идет. Согласие.

Если в общении с компьютером употребить слово "идет", компьютер должен перебрать 26 значений и выбрать единственное.

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

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


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

Началась она с разработки машинных языков: языка нулей и единиц. Запись на таком языке была очень трудоемкой и утомительной работой. В конце 1940-х и в нача­ле 1950-х годов для облегчения тяжкого труда написания программ в машинных кодах была изобретена система обозначений, называемая языком АССЕМБЛЕРА. Вместо двоичных цифр, обозначающих какую-то команду, писались короткие слова или аб­бревиатура, например, ADD (добавить), SUB (вычесть), MOV (поместить). Например, алгоритм вычисления выражения Х = Y + Z на языке ассемблера записывается следую­щим образом:

MOV AX,Y загрузить Y в регистр АХ

MOV BX,Z ; загрузить Z в регистр ВХ

ADD AX.BX ; добавить Z к Y

MOV Х,АХ ; сохранить результат в Х

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

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

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

Говоря об искусственном языке, необходимо отметить его краткость и немно­гословность (до 50-ти слов и конструкций). Языков программирования и их версий на­считывается, по крайней мере, несколько сотен, а вернее - несколько тысяч.

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

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

• ЛИСП - ( от List Processing - обработка списков) - применяется для исследований в

области искусственного интеллекта. . ФОРТРАН - (от Formula Translator - переводчик формул ^разработан в середине 50-

х годов для описания математических алгоритмов.

• КОБОЛ - ( от CommonBusiness Oriented Language ) - для решения финансово - эко­номических задач.

• БЕЙСИК - ( от Beginner All Purpose Symbolic Code ) - универсальный символиче­ский язык(код) для начинающих, разработан в 1964 году.


• СИ - разработан в 1972 году как универсальный язык системного программирова­ния, он как бы являет собой компромисс между низким уровнем ассемблера и высо­ким уровнем описанных выше языков.

. ПАСКАЛЬ - получил свое название в честь французского математика 17 века Бле-за Паскаля. Разработан швейцарским ученым, специалистом в области информатики Никлаусом Виртом как язык для преподавания современных принципов програм­мирования. Применим для решения прикладных задач различных типов.

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

Транслятор - программа, переводящая текст алгоритма, записанного на ка­ком-то языке программирования, на язык машинных кодов.

Различают два вида трансляторов: компиляторы и интерпретаторы. Они раз­личаются с точки зрения выполнения работы. Компилятор читает всю программу це­ликом, делает •ее перевод и создает законченный вариант программы на машинном языке, который затем загружается в компьютер и выполняется; интерпретатор пере­водит и выполняет программу строка за строкой (как синхронный переводчик).

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

Для каждого языка программирования существует свой транслятор, иногда для одного языка создается и компилятор, и интерпретатор. Откомпилированная про­грамма выполняется быстрее, чем та, которая обрабатывается интерпретатором.

Языки программирования высокого уровня - машиннонезависимые языки: про­грамма, написанная на таком языке, может быть выполнена на ЭВМ разных типов при наличии соответствующего транслятора.








Дата добавления: 2015-12-11; просмотров: 2257;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.