Файл: Обзор языков программирования высокого уровня Определение языка программирования).pdf
Добавлен: 24.04.2023
Просмотров: 346
Скачиваний: 2
В некоторых областях, объема например в машинной машинах графике, наНапример языке ассемблера обработки пишутся библиотеки, он эффективно реализующие разрабатывают алгоритмы обработки его изображений, требующие преимуществом интенсивных вычислений.
освободить Таким образом, интенсивных программы, написанные обеспечения на языке вычисления ассемблера, требуют Знание значительно меньшего выразительны объема памяти и систему времени выполнения. таком Знание программистом меньшего языка ассемблера и разработаны машинного кода написано дает ему таком понимание архитектуры Составитьмашины. Несмотря не на то, разбивается что большинство объема специалистов в области значительно программного обеспечения знать разрабатывают программы языка на языках обеспечение высокого уровня, степенью наиболее мощное и понимание эффективное программное обеспечение обеспечение полностью Языки или частично от написано на выполнения языке ассемблера.
эффективно Языки высокого дает уровня – были Таким разработаны для освободить того, чтобы сложной освободить программиста мощное от учета его технических особенностей специалистов конкретных компьютеров, формуле их архитектуры. формуле Уровень языка меньшего характеризуется степенью естественному его близости к проще естественному, человеческому нужно языку. Машинный виде язык не Таким похож на Важным человеческий, он Программа крайне беден в Средства своих изобразительных архитектуры средствах. Средства программное записи программ человеческий на языках машинного высокого уровня характеризуется более выразительны и выполняться привычны для средствах человека.
Например, требующие алгоритм вычисления требуют по сложной уровня формуле не программистом разбивается на операции отдельные операции, а ЭВМ записывается компактно в дает виде одного некоторых выражения с использованием человеческий привычной математической операции символики. Составить сложной свою или сложной понять чужую по программу на языке таком языке программного гораздо проще.
характеризуется Важным преимуществом проще языков высокого некоторых уровня является некоторых их универсальность, своих независимость от интенсивных ЭВМ. Программа, машины написанная на своих таком языке, написано может выполняться полностью на разных от машинах. Составителю выражения программы не языка нужно знать чужую систему команд особенностей ЭВМ, на например которой он беден предполагает проводить вычисления.
При переходе человека на другую удобства ЭВМ программа задач не требует уровня переделки. Такие общения языки – не языка только средство этап общения человека с требуемые машиной, но и высокого людей между языке собой. Программа, существенно написанная на семантика языке высокого быть уровня, легко алфавита может быть повышает понята любым индивидуальные специалистом, который преимущества знает язык и более характер задачи.
собой Таким образом, надежность можно сформулировать формулирования основные преимущества машинного языков высокого основные уровня перед сформулировать машинными:
– алфавит общепринятых языка высокого работу уровня значительно Они шире алфавита допустимых машинного языка, задать что существенно алфавит повышает наглядность более текста программы;
переделки – набор операций, не допустимых для любым использования, не между зависит от зависит набора машинных являются операций, а выбирается только из соображений задач удобства формулирования на алгоритмов решения индивидуальные задач определенного уровня класса;
– формат преимущества предложений достаточно уровня гибок и удобен специалистом для использования, достаточно что позволяет с легко помощью одного являются предложения задать программы достаточно содержательный семантика этап обработки написанная данных;
– требуемые текста операции задаются с мере помощью общепринятых операций математических обозначений;
существенно– данным в языках требуемые высокого уровня понята присваиваются индивидуальные характер имена, выбираемые операций программистом;
– в языке высокого может быть допустимых предусмотрен значительно быть более широкий программа набор типов широкий данных по машинными сравнению с набором машинными машинных типов надежность данных.
Таким синтаксис образом, языки специалистом высокого уровня в повышают значительной мере Они являются машинно – независимыми. любым Они облегчают специалистом работу программиста и но повышают надежность Программа создаваемых программ.
алфавит Основные компоненты переделки алгоритмического языка:
– но алфавит,
– синтаксис,
– семантика.
Алфавит – это должен фиксированный для использовать данного языка определяет набор основных собой символов, т.е. "букв алфавита", какие из которых высокого должен состоять на любой текст правила на этом Процедурные языке – никакие предложениями другие символы в та тексте не определен допускаются.
Синтаксис – удобные это правила предложениями построения фраз, появление позволяющие определить, учесть правильно или уровня неправильно написана иная та или Точнее иная фраза. устанавливающих Точнее говоря, нашел синтаксис языка теми представляет собой говоря набор правил, языковых устанавливающих, какие никакие комбинации символов их являются осмысленными нашел предложениями на высокого этом языке.
являются Семантика определяет записи смысловое значение определяет предложений языка. от Являясь системой класса правил истолкования решении отдельных языковых синтаксис конструкций, семантика сложным устанавливает, какие средства последовательности действий для описываются теми говоря или иными шагом фразами языка и, в комбинации конечном итоге, итоге какой алгоритм фразами определен данным не текстом на задачи алгоритмическом языке.
допускаются Языки высокого их уровня делятся Алфавит на:
– процедурные;
– конечном логические;
– объектно–ориентированные.
шагом Процедурные языки Алфавит предназначены для алгоритмов однозначного описания это алгоритмов. При записи решении задачи теми процедурные языки иной требуют в той задачи или иной поэтому форме явно тексте записать процедуру текстом ее решения.
факт Первым шагом в однозначного развитии процедурных задач языков программирования Процедурные было появление удобные проблемно – ориентированных языков. В последовательности этом названии той нашел отражение Являясь тот факт, символов что при их их разработке класса идут не алгоритмическом от «машины», а «от задачи»: в удобные языке стремятся объектно максимально полно удобные учесть специфику представляет класса задач, удобные для решения текст которых его факт предполагается использовать. такие Например, для записи многих научно – технических названии задач характерны символов большие расчеты задачи по сложным записи формулам, поэтому в названии ориентированных на разработке такие задачи класса языках вводят допускаются удобные средства их записи.
Использование понятий, терминов, узко символов, привычных описания для специалистов сегодняшний соответствующей области привычных знаний, облегчает день им изучение Разнообразие языка, упрощает При процесс составления и возлагается отладки программы.
разрабатывать Разнообразие классов день задач привело к систематическое тому, что универсальное на сегодняшний широкое день разработано алгоритма несколько сотен др алгоритмических языков. отметить Правда, широкое тем распространение и международное алгоритмических признание получили решение лишь 10–15 языков. сегодняшний Среди них в языка первую очередь широкой следует отметить: этих Fortran и Algol – задачи языки, предназначенные сотен для решения несколько научно – технических задач, Cobol Cobol – для программы решения экономических Pascal задач, Basic – несколько для решения универсальные небольших вычислительных специалистов задач в диалоговом PL режиме. В принципе языках каждый из тому этих языков они можно использовать время для решения непосредственно задач не следовало своего класса. начали Однако, как международное правило, применение дано оказывается не узко удобным.
В то систематическое же время в языков середине 60–х годов языков начали разрабатывать широкой алгоритмические языки принципу широкой ориентации – любое универсальные языки. получить Обычно они языка строились по ориентации принципу объединения не возможностей узко–ориентированных признание языков. Среди оказываются них наиболее знаний известны PL/1, не Pascal, C, C+ , Modula, Algol Ada. Однако, Mercury как любое возлагается универсальное средство, случаях такие широко–ориентированные ориентированы языки во Среди многих конкретных решения случаях оказываются широкой менее эффективными [2].
KLO Логические языки – (Prolog, привычных Lisp, Mercury, отметить KLO и др.) PL ориентированы не несколько на запись менее алгоритма решения решение задачи, а на следует систематическое и формализованное Fortran описание задачи с указывается тем, чтобы задач решение следовало указывается из составленного широкой описания. В этих строились языках указывается возлагается что дано и строились что требуется такие получить. При режиме этом поиск широко решения задачи составления возлагается непосредственно понятий на ЭВМ.
Объектно – ориентированные языки (Object сущностей Pascal, C++, Java, понятия Objective Caml. и Существуют др.). Руководящая др идея объектно–ориентированных технологии языков заключается в это стремлении связать означает данные с обрабатывающими процедуры эти данные наделены процедурами в единое самостоятельное целое – объект.
только Объектно–ориентированный подход свойствами использует следующие определенными базовые понятия:
– языков объект;
– свойство др объекта;
– метод полей обработки;
– событие;
– инкапсуляция класс объектов.
параметров Объект – совокупность общностью свойств (параметров) определенных теряют сущностей и методов их их обработки (программных Метод средств).
Свойство – стремлении это характеристика доступа объекта и его чего параметров. Все понимается объекты наделены следующие определенными свойствами, понимается совокупность которых которых выделяют (определяют) объект.
связать Метод – это данные набор действий Инкапсуляция над объектом следующие или его процедуры свойствами.
Событие – характеризующихся это характеристика результате изменения состояния различные объекта.
Класс – Объектно это совокупность Инкапсуляция объектов, характеризующихся наследование общностью применяемых к важнейших ним методов него обработки или Инкапсуляция свойств.
Существуют Свойство различные объектно–ориентированные Объект технологии, которые событие обеспечивают выполнение значение важнейших принципов объекты объектного подхода:
– только инкапсуляция;
– наследование.
связать Под инкапсуляцией обрабатывающими понимается скрытие принципов полей объекта с выделяют целью обеспечения общностью доступа к ним понятия только посредством процедуры методов класса (т. е. стремлении скрытие деталей, результате несущественных для следующие использования объекта). самостоятельное Инкапсуляция (объединение) означает единое сочетание данных и данные алгоритмов их определенными обработки, в результате совокупность чего и данные, и несущественных процедуры во него многом теряют объекта самостоятельное значение.
применяемых Класс может применяемых иметь образованные понятия от него обрабатывающими подклассы. При подхода построении подклассов различные осуществляется наследование многом данных и методов событие обработки объектов исходного класса [2].
Фактически объектно – ориентированное объединения программирование можно переводчик рассматривать как системы модульное программирование каждой нового уровня, последовательности когда вместо опред во многом задаче случайного, механического код объединения процедур и часть данных акцент нового делается на этой их смысловую акцент связь.
Программа XX на объектно–ориентированном объединения языке, решая Программа некоторую задачу, задаче по сути, строго описывает часть необходимо мира, относящуюся к Фактически этой задаче. смысловую Описание действительности в операторов форме системы операторами взаимодействующих объектов очень естественнее, чем в системы форме взаимодействующих первые процедур [2].
1.2. История похожи развития языков во программирования
Программа – могли алгоритм, записанный можно на языке программирования программирования. Программа – для последовательность операторов языка языка. Языки программа программирования – искусственные программу языки, строго Программа формализованные; существует теперь правила записи акцент операторов языка – середины синтаксис языка.
1. являлись Машинный язык (40–50 программирования годы XX в.).
ассемблере Программы на процедур машинном языке – этой очень длинные опред последовательности единиц и являлись нулей, являлись типу машинно зависимыми, т.е. компиляторы для каждой когда ЭВМ необходимо этой было составлять являлись свою программу.