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

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

Язык программирования – это средство описания алгоритма для решения задач на ЭВМ.

Алгоритм, записанный на языке программирования, называется программой.

К средствам языка относятся:

  • алфавит (символы, цифры и специальные знаки);
  • правила составления операторов-предложений для описания действий (команд).

Языки символического кодирования

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

«Низкий уровень» не означает неразвитый, имеется ввиду, что операторы этого языка близки к машинному коду и ориентированы на конкретные команды процессора.

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

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

Это так называемые языки символического кодирования. В них используются буквенные и буквенно-цифровые коды. К ним относятся: Ассемблер, Макроассемблер, автокоды.

Достоинство языков низкого уровня: высокая скорость решения задач.

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

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

Языки высокого уровня машинно-независимы, т.к. ориентированы не на систему команд той или иной ЭВМ, а на систему операндов, характерных для записи определенного класса алгоритмов.

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

Недостатки: занимают больше памяти, медленнее выполняются, требуется дополнительное время на трансляцию и дополнительная память для транслятора.

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

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

Используются два режима трансляции: компиляция и интерпретация.

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

Интерпретатор – это транслятор, производящий пооператорную (покомандную) обработку и выполнение исходной программы.

1. Процедурное программирование.

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

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

К операционным языкам относятся Фортран, Бейсик.

К структурным языкам относятся: Паскаль, Си, Ада, ПЛ/1.

Дадим краткую характеристику нескольким процедурным языкам.

Фортран (переводчик формул) был создан в 1954-1958 гг. сотрудниками фирмы IBM под руководством Джона Бэкуса. Он использовался для решения научно-технических задач. Это первый язык высокого уровня. Создана большая библиотека программ.

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

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

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

ПЛ/1 (универсальный программно-ориентированный) разработан в 1964 г. в США фирмой IBM для больших ЭВМ. Использовался для научных расчетов, организации больших массивов информации. Это очень мощный, но и очень сложный язык.

Паскаль создал в 1970 г. профессор Никлаус Вирт в Цюрихском политехническом Университете. Свое название получил в честь французского математика и физика 17 века Блеза Паскаля, изобретателя «суммирующей машины». Он создавался как язык для обучения программированию, а с другой – давал возможность эффективно решать самые разнообразные задачи на современных ЭВМ. Это очень простой и компактный язык, его понятия близки к фундаментальным понятиям математики. Особенно широкое распространение языка началось после 1984 г., когда были созданы версии Turbo Pascal.

Ада создан в 1980 г. и назван в память об Аде Лавлейс – дочери английского поэта лорда Байрона, первой программистки в истории вычислительной техники. Он был создан во Франции по заказу американского министерства обороны как универсальный язык программирования. Этот язык унаследовал качества языков Паскаль и АЛГОЛ-68 и дополнительно приобрел многие другие качества : системное программирование, параллельность и т.д. Этот язык очень сложен для изучения.

С (Си) был создан в 1972 г. в лаборатории Bell. Его простое и неброское название связано с тем, что язык не планировался в качестве массового. В данном случае «С» — это просто третья буква английского алфавита. Этот язык был разработан для реализации операционной системы Unix. Язык С приобрел большую популярность среди системных и прикладных программистов. В настоящее время этот язык реализован для большинства компьютерных платформ.

Источник

1.4. Назначение и классификация языков программирования

Основная идея автоматизации программирования заключается в отказе от написания программ непосредственно в машинных кодах. Программа пишется на некотором входном языке. Входные языки делятся на следующие группы : 1) машинно-ориентированные языки; 2) процедурно-ориентированные языки; 3) объектно-ориентированные языки; 4) проблемно-ориентированные языки; 5) языки четвертого поколения (4GL).

1.4.1. Машинно-ориентированные языки

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

1.4.2. Машинно-независимые языки

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

Вторая группа. Процедурно-ориентированные языки. Языки данной группы первоначально предназначались для решения конкретного класса задач – инженерных, научно-технических, обработки экономической информации, обработки списков, моделирования и т.д. Со временем большинство из языков данной группы развивалось и превратилось в достаточно мощные универсальные языки программирования. Ниже дана краткая характеристика первых версий языков данной группы. Фортран . Разработан в 1956 г. Предназначался для решения инженерных и научно-технических задач. Предоставлял пользователю большие возможности для обработки числовых данных, но располагал бедными средствами для работы с символьными строками. Алгол (1958г.). Первый язык с блочной структурой. Располагал бедными средствами ввода-вывода. Предназначался для решения широкого круга математических задач. Кобол (1959г.). Язык, ориентированный на решение коммерческих (планово-экономических) задач. В Коболе особое место было отведено понятиям записи, файла, описанию поля, предусматривались широкие возможности для манипулирования данными. Бейсик (1965г.). Первоначально был разработан как язык для обучения программированию. Являлся упрощенной версией Фортрана. Предоставлял широкие средства для диалога, но имел ограниченные возможности по сравнению с другими языками высокого уровня. ПЛ/1 (1965г.). Сочетал в себе многие черты Алгола, Кобола и Фортрана. Являлся одним из самых универсальных языков программирования. Располагал большим числом средств, что делало его весьма сложным для изучения и использования. Паскаль (1971г.). Основан на Алголе. Являлся языком с блочной структурой, способствовал структурному подходу к программированию. Располагал большим набором управляющих операторов. Широко используется в настоящее время в персональных компьютерах. Си (1972г.). Первоначально был разработан для мини-ЭВМ, использующих операционную систему UNIX. Включал средства для проектирования на уровне ассемблера, средства для эффективного использования аппаратуры. Поэтому считался наиболее эффективным в плане скорости выполнения программы и необходимой памяти. Нашел широкое применение при написании программ вычислительного характера и программ операционных систем. Ада (1979г.). Представлял собой расширение языка Паскаль для больших машин. Являлся существенно структурированным языком. Был особенно удобен при использовании в системах реального времени. 10

Источник

Читайте также:  Scr это в программировании
Оцените статью