Языки программирования низкого высокого и сверхвысокого уровня

Языки программирования низкого, высокого и сверхвысокого уровней

ЯЗЫКИ ПРОГРАММИРОВАНИЯ

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

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

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

Языки программирования высокого уровняпозволяют на уровне написания программы оперировать с привычными объектами: операторами, функциями, процедурами и т.д. Поэтому принято считать, что такие ЯП являются в определенном смысле универсальными. С одной стороны они не привязаны ни к какой конкретной предметной области, а с другой, часто имеют достаточно развитые системные возможности. К языкам такого уровня следует отнести Pascal, C и многие другие. Считается, что такие ЯП являются машинно-независимыми.В действительности, это далеко не так, а идея машинной независимости порождена желаниями разработчиков трансляторов!

Языки программирования сверхвысокого уровняпозволяют оперировать понятиями, принятыми в конкретной предметной области. Как правило, они практически лишены возможности доступа к системным ресурсам компьютера, но программировать в них может (часто без особой подготовки) специалист в соответствующей предметной области. Такими ЯП являются MatLab, Eureka Solver, MachCAD и т.д.

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

Дата добавления: 2014-12-16 ; Просмотров: 777 ; Нарушение авторских прав?

Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет

Источник

Классификации языков программирования.

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

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

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

К языкам сверхвысокого уровня можно отнести лишь Алгол-68 и APL. Повышение уровня этих языков произошло за счет введения сверхмощных операций и операторов.

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

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

Среди процедурных языков выделяют в свою очередь структурные и операционные языки. В структурных языках одним оператором записываются целые алгоритмические структуры: ветвления, циклы и т.д. В операционных языках для этого используются несколько операций. Широко распространены следующие структурные языки: Паскаль, Си, Ада, ПЛ/1. Среди операционных известны Фортран, Бейсик, Фокал.

Непроцедрное (декларативное) программирование появилось в начале 70-х годов 20 века, но стремительное его развитие началось в 80-е годы, когда был разработан японский проект создания ЭВМ пятого поколения, целью которого явилась подготовка почвы для создания интеллектуальных машин. К непроцедурному программированию относятся функциональные и логические языки.

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

Языки описания сценариев, такие как Perl, Python, Rexx, Tcl и языки оболочек UNIX, предполагают стиль программирования, весьма отличный от характерного для языков системного уровня. Они предназначаются не для написания приложения с нуля, а для комбинирования компонентов, набор которых создается заранее при помощи других языков. Развитие и рост популярности Internet также способствовали распространению языков описания сценариев. Так, для написания сценариев широко употребляется язык Perl, а среди разработчиков Web-страниц популярен JavaScript.

Источник

Языки программирования низкого, высокого и сверхвысокого уровней

Дата добавления: 2015-01-16 ; просмотров: 2188 ; Нарушение авторских прав

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

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

Языки программирования высокого уровняпозволяют на уровне написания программы оперировать с привычными объектами: операторами, функциями, процедурами и т.д. Поэтому принято считать, что такие ЯП являются в определенном смысле универсальными. С одной стороны они не привязаны ни к какой конкретной предметной области, а с другой, часто имеют достаточно развитые системные возможности. К языкам такого уровня следует отнести Pascal, C и многие другие. Считается, что такие ЯП являются машинно-независимыми.В действительности, это далеко не так, а идея машинной независимости порождена желаниями разработчиков трансляторов!

Языки программирования сверхвысокого уровняпозволяют оперировать понятиями, принятыми в конкретной предметной области. Как правило, они практически лишены возможности доступа к системным ресурсам компьютера, но программировать в них может (часто без особой подготовки) специалист в соответствующей предметной области. Такими ЯП являются MatLab, Eureka Solver, MachCAD и т.д.

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

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии