Файл: Современные языки программирования (Концепция языка программирования).pdf
Добавлен: 31.03.2023
Просмотров: 114
Скачиваний: 2
Введение
Технология программирования не стоит на месте и постоянно развивается с учетом новых потребностей в сфере IT-технологий. Существуют два главных требования для языков программирования: их близость к обычному профессиональному языку определенной сферы деятельности и простота реализации. Противоречивость требований стимулирует непрерывный процесс создания новых языков и доработки существующих.
Язык программирования – система обозначений для описания алгоритмов и структур данных, определенная искусственная формальная система, средствами которой можно выражать алгоритмы.
На современном этапе развития компьютерных технологий невозможно представить какого-либо высококвалифицированного специалиста, не владеющего информационными технологиями. Поскольку деятельность любого субъекта в значительной степени зависит от степени владения информации, а также способности эффективно ее использовать.
Для свободной ориентации в информационных потоках современный специалист любого профиля должен уметь получать, обрабатывать и использовать информацию, прежде всего, с помощью компьютеров, а также телекоммуникаций и других новейших средств связи, в том числе и уметь, обращаться с языками программирования.
Актуальность данной темы обусловлена тем, что прогресс компьютерных технологий определил процесс появления новых разнообразных знаковых систем для записи алгоритмов - языков программирования.
Объектом исследования послужили языки программирования и история развития языков программирования.
Целью курсовой работы является изучение классификации языков программирования и их развития.
Задачи исследования:
1. Ознакомления с языками программирования.
2. Рассмотрение классификации языков программирования.
3. Обзор современных языков программирования.
4. Сопоставительная характеристика языков программирования.
Глава 1. Понятие и классификация языков программирования
1.1.Концепция языка программирования
Процесс работы компьютера заключается в выполнении программы, то есть набора вполне определённых команд во вполне определённом порядке. Машинный вид команды, состоящий из нулей и единиц, указывает, какое именно действие должен выполнить центральный процессор. Значит, чтобы задать компьютеру последовательность действий, которые он должен выполнить, нужно задать последовательность двоичных кодов соответствующих команд. Программы в машинных кодах состоять из тысячник команд. Писаться такие программный – занятие сложное и утомительное.
Программист должен помниться комбинацию нулей и единица двоичного кодак каждой программный, а также двоичные коды адресовать данных, используемых приз её выполнении. Гораздо прощение написать программу над каком-нибудь языке, более близком к естественному человеческому языку, а работу под переводу этой программный в машинные коды поручиться компьютеру. Такт возникли языки, предназначенные специальность для написания программа, - языки программирования.
Имеется многое различных языковед программирования. Вообще-тоё для решения большинства задач можно использовать любой изо них. Опытные программисты знают, какой язык лучше использовать для решения каждой конкретной задачи, такт как каждый изо языков имеет свои возможности, ориентацию над определённые типы задач, свой способный описания понятийный и объектовый, используемых приз решении задач. [3]
Всё множество языковед программирования можно разделиться на дверь группы: языки низкогорье уровня и языки высокогорье уровня.
К языкам низкогорье уровня относятся языки ассемблера (ото англ. to assemble – собираться, компоноваться). В языке ассемблера используются символьные обозначения команда, которые легковер понятны и быстрота запоминаются. Вместо последовательности двоичных кодовый команд записываются ихний символьные обозначения, а вместо двоичных адресовать данных, используемых приз выполнении командный, - символьные имена этих данных, выбранные программистом. Иногда язык ассемблера называют мнемокодом или автокодом.
Большинство программистов пользуются для составления программа языками высокогорье уровня. Какао и обычный человеческий язык, такой язык имеет свой алфавитный – множество символов, используемых в языке. Изо этих символов составляются такт называемые ключевые словаки языка.
Каждое изо ключевых слово выполняет свою функцию, такт же какао в привычном нами языке нами языке словаки, составленные изо букв алфавита данного языкатый, могутный выполнять функции разных частей речитал. Ключевые словаки связываются другач с другом в предложения под определённым синтаксическим правилам языкатый. Каждое предложение определяет некоторую последовательность действий, которые должен выполниться компьютер. [10]
Язык высокогорье уровня выполняет ролька посредника между человеком и компьютером, позволяя человеку общаться с компьютером более привычным для человека способом. Частное такой язык помогает выбраться правильный метода решения задачи.
Передо тем какао писать программу над языке высокогорье уровня, программист должен составиться алгоритм решения задачи, тоё есть пошаговый планёр действий, который нужность выполнить для решения этой задачи. Поэтому языки, требующие предварительного составления алгоритма, частное называют алгоритмическими языками.
1.2 Классификация языковед программирования
Машинность–ориентированные языки – этот языки, наборный операторов и изобразительные средства которых существенно зависят ото особенностей ЭВМ (внутреннего языкатый, структурный памяти и т.д.). Машинность–ориентированные языки позволяют использовать всего возможности и особенности Машинность – зависимых языковед: высоконек качество создаваемых программа (компактность и скорость выполнения); возможность использования конкретных аппаратных ресурсов; предсказуемость объектного кодак и заказов памятник; для составления эффективных программа необходимо знать систему команда и особенности функционирования данной ЭВМ; трудоемкость процесса составления программа (особенность на машинных языках и ЯСК), плохой защищенного ото появления ошибочка; низкая скорость программирования; невозможность непосредственного использования программа, составленных над этих языках, над ЭВМ других типовой.
Машинность-ориентированные языки под степени автоматического программирования подразделяются над классы.
Машинный язык. Отдельный компьютерный имеет свой определенный Машинный язык (далече МЯ), ему предписывают выполнение указываемых операций надо определяемыми имидж операндами, поэтому МЯч является командным. Однако, некоторые семейства ЭВМ (например, ЕСи ЭВМ, IBM/370/ и драм.) имеют единый МЯч для ЭВМ разной мощности. В команде любого изо них сообщается информация о местонахождении операндов и типец выполняемой операции. [9]
В новых модулях ЭВМ намечается тенденция к повышению внутренних языковед машинно–аппаратным путем реализовывать более сложные командный, приближающиеся под своим функциональным действиям к операторам алгоритмических языковед программирования.
Языки Символического Кодирования. Языки Символического Кодирования (далече ЯСК), такт же, какао и МЯч, являются командными. Однако коды операций и адресат в машинных командах, представляющие собой последовательность двоичных (воз внутреннем кодер) или восьмеричных (частное используемых приз написании программа) цифра, в ЯСК заменены над символы (идентификаторы), формат написания которых помогает программисту легче запоминать смысловое содержание операции. Этот обеспечивает существенное уменьшение числа ошибочка при составлении программа.
Автокоды. Есться также языки, включающие в себя всего возможности ЯСК, посредством расширенного введения макрокоманд - оникс называются Автокоды. В различных программах встречаются некоторые достаточность часто использующиеся командные последовательности, которые соответствуют определенным процедурам преобразования информации. Эффективная реализация таких процедура обеспечивается оформлением ихний в видео специальных макрокоманд и включением последних в язык программирования, доступный программисту.
Макрокоманды переводятся в машинные командный двумя путями – расстановкой и генерированием. В постановочной системе содержаться «остовый» - серицин команд, реализующих требуемую функцию, обозначенную макрокомандой. Макрокоманды обеспечивают передачу фактических параметров, которые в процессе трансляции вставляются в «остовый» программный, превращая её в реальную машинную программу. В системе с генерацией имеются специальные программный, анализирующие макрокоманду, которые определяют, какую функцию необходимость выполнить и формируют необходимую последовательность команда, реализующих данную функцию. Обед указанных системный используют трансляторы с ЯСК и наборный макрокоманд, которые также являются операторами автокода. Развитые автокоды получили названьице Ассемблеры. Сервисные программный и пре., какао правило, составленный на языках типаж Ассемблер. [6]
Макрос. Язык, являющийся средством для замены последовательности символов описывающих выполнение требуемых действий ЭВМ над более сжатую формула - называется Макрос (средство замены). В основном, Макрос предназначен для того, чтобы сократиться запись исходной программный. Компонента программного обеспечения, обеспечивающий функционирование макросов, называется макропроцессором. Над макропроцессор поступает макроопределяющий и исходный текстиль. Реакция макропроцессора над вызов-выдача выходного текста. Макрос одинаковость может работаться, какао с программами, такт и с данными.
Машинность–независимые языки – этот средство описания алгоритмов решения задач и информации, подлежащей обработке. Оникс удобны в использовании для широкого кругаль пользователей и нет требуют ото них знания особенностей организации функционирования ЭВМ и ВСе.
Подобные языки получили названьице высокоуровневых языковед программирования. Программный, составляемые над таких языках, представляют собой последовательности операторов, структурированные согласность правилам рассматривания языкатый (задачи, сегментный, блокшив и т.д.). Операторы языкатый описывают действия, которые должна выполняться система послед трансляции программный. [5]
Тоё есть, командные последовательности (процедурный, подпрограммы), частное используемые в машинных программах, представлены в высокоуровневых языках отдельными операторами. Программист получил возможность нет расписывать в деталях вычислительный процессия на уровневый машинных команда, а сосредоточиться над основных особенностях алгоритма.
Проблемность – ориентированные языки. С расширением областей применения вычислительной техники возникла необходимость формализовать представление постановки и решение новых классовый задач. Необходимость было создаться такие языки программирования, которые, используя в данной областник обозначения и терминологию, позволили бык описывать требуемые алгоритмы решения для поставленных задач, имидж стали проблемность – ориентированные языки.
Этил языки - языки ориентированные над решение определенных проблема, должный обеспечить программиста средствами, позволяющими короткость и четко формулировать задачу и получаться результаты в требуемой форменка.
Проблемных языковед очень многое, например: Фортран, Алгол – языки, созданные для решения математических задач; Simula, Слэнг - для моделирования; Лисп, Снобол – для работный со списочными структурами. О нихром я расскажу дальше.
Универсальные языки. Универсальные языки былина созданы для широкого кругаль задач: коммерческих, научных, моделирования и т.д. Первый универсальный язык быль разработан фирмой IBM, ставший в последовательности языковед Пл/1. Второй под мощности универсальный язык называется Алгол-68. Оно позволяет работаться с символами, разрядами, числами с фиксированной и плавающей запятой. Пли/1 имеет развитую систему операторов для управления форматами, для работный с полями переменной длинный, с данными организованными в сложные структурный, и для эффективного использования каналовый связи. [14]
Язык учитывает включенные воз многие машинный возможности прерывания и имеет соответствующие операторы. Предусмотрена возможность параллельного выполнение участковый программ. Программный в Пли/1 компилируются с помощью автоматических процедура. Язык использует многие свойства Фортрана, Алгола, Кобола. Однако оно допускает нет только динамическое, нож и управляемое и статистическое распределения памятник.
Диалоговые языки. Появление новых технических возможностей поставило задачу передо системными программистами – создаться программные средства, обеспечивающие оперативное взаимодействие человека с ЭВМ ихний назвали диалоговыми языками. Этил работы велись в двух направлениях. Создавались специальные управляющие языки для обеспечения оперативного воздействия над прохождение задач, которые составлялись над любых раннее неразработанных (нет диалоговых) языках. Разрабатывались также языки, которые кромлех целей управления обеспечивали бык описание алгоритмов решения задач. [2]