Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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

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

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

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

Эмуляция — один из способов электронного архивирования устаревающих вычислительных систем. В такой трактовке целью эмуляции является точное воспроизведение оригинального цифрового окружения, что может быть труднодостижимым и затратным по времени, однако ценно ввиду возможности достижения близкой связи с аутентичным цифровым объектом.

Основные преимущества таковы:

· алфавит алгоритмического языка значительно шире алфавита машинного языка, что существенно повышает наглядность текста программы;

· набор операций, допустимых для использования, не зависит от набора машинных операций, а выбирается из соображений удобства формулирования алгоритмов решения задач определенного класса;

· формат предложений достаточно гибок и удобен для использования, что позволяет с помощью одного предложения задать достаточно содержательный этап обработки данных;

· требуемые операции задаются с помощью общепринятых математических обозначений;

· данным в алгоритмических языках присваиваются индивидуальные имена, выбираемые программистом;

· в языке может быть предусмотрен значительно более широкий набор типов данных по сравнению с набором машинных типов данных.

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

 

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

Среди старых языков высокого уровня можно отметить такие, как Algol, FORTRAN и Cobol. Язык Algol не дошел до нашего времени, но его идеи были перенесены в более современные языки программирования. Что касается языка Cobol, разработанного для коммерческих расчетов, то он существует до сих пор и на нем разрабатываются приложения, связанные с бизнесом. Но самым долгоживущим из старых языков высокого уровня оказался FORTRAN. С самого начала этот язык разрабатывался для сложных математических расчетов. И в настоящий момент этот язык не уступает пальмы первенства в этой области программирования, оставаясь самым удобным языком для расчетов в науке и технике, сложной графики и т.п.

Кобол - это сравнительно старый язык, разработанный прежде всего для исследований в экономической сфере. Язык позволяет эффективно работать с большим количеством данных, он насыщен разнообразными возможностями поиска, сортировки и распределения. О программах на Коболе, основанных на широком использовании английского языка, говорят, что они понятны даже тем, кто не владеет Коболом, поскольку тексты на этом языке программирования не нуждаются в каких-либо специальных комментариях. Подобные программы принято называть самодокументирующимися. К числу других плюсов Кобола обычно относят его структурированность. Довольно мощные компиляторы с этого языка разработаны для персональных компьютеров. Некоторые из них столь эффективны, что программу, отлаженную на персональном компьютере, нетрудно перенести на большие ЭВМ.

Для инженерных расчетов этот язык не годится. Еще одна причина, которая в какой-то мере сдерживает развитие языка, - это наличие в США специально созданного отраслевого комитета, вырабатывающего стандарты, за соблюдением которых следит правительственная комиссия. Как это всегда бывает в подобных случаях, фирмы, занимающиеся разработкой программного обеспечения, не торопятся подгонять свои заготовки к жестким требованиям комиссии, отсутствует конкуренция версий, а в итоге проигрывает распространение языка

ПЛ/1 разработан в 1964-1965 годах фирмой IBM. ПЛ/1 относится к числу универсальных языков, т.е. позволяет решать задачи из разных областей: численные расчеты, текстовая обработка, экономические задачи и т. д. По своим возможностям он перекрывает такие языки, как Фортран, Алгол-60 (созданный для численных расчетов), Кобол (для экономических задач), хотя в силу ряда причин вытеснить эти языки ПЛ/1 не смог.

Вместе с тем, ПЛ/1 имеет и ряд недостатков, затрудняющих изучение и использование языка. Основные из них таковы. Во-первых, имеется много дублирующих друг друга средст; их сложно запомнить, не ясно, что когда применять, кроме того, это снижает как скорость трансляции, так и скорость выполнения программ. Во-вторых, программы получаются не совсем машинно-независимыми.

 

 

Из языков программирования высокого уровня, имеющих значительный стаж работы, можно назвать Basic, C (читается «СИ»), C++, Pascal, Modula и ADA. Самым популярным среди начинающих, несомненно, является Basic, который изначально был ориентирован на тех, кто только делает первые шаги в программировании. Его преподают в школах на уроках информатики и в кружках программирования. Но это не значит, что он слаб и не пригоден для серьезных задач: существует такой транслятор этого языка, как, например, Visual Basic компании Microsoft, который фактически стал стандартом в разработке бизнес-решений и информационных систем. Ранее один из вариантов Basic был аппаратно встроен в базовое программное обеспечение IBM PC. Даже в комплект поставки операционной системы MS-DOS входит разновидность Basic — QBasic.

Язык Паскаль (Pascal) получил свое название в честь французского математика 17 века Блеза Паскаля. Этот язык был разработан швейцарским ученым, специалистом в области информатики, Никлаусом Виртом. Язык Паскаль обеспечивает возможность создания больших программ, поддерживая их строгую логическую структуру. Это качество данного языка весьма ценно для начинающих программистов, создающих серьезные программы, так как приучает их к определенной дисциплине. Однако для коротких программ Паскаль может оказаться излишне громоздким. Паскаль считается важнейшим инструментом для обучения методам структурного программирования и с 1983 года введен во всех средних школах США в учебные курсы для учащихся, которые специализируются в области информатики.

Язык С разработал в 1972 году Деннис Ричи, специалист по системному программированию фирмы «Белл телефон лабораторис». Язык С возник лишь как результат дружеского соревнования внутри небольшой лаборатории. Название «Си» появилось так же случайно, как и сам язык. Он оказался преемником ранее созданного языка для внутреннего использования, получившего название Би (В) (В, С — вторая и третья буквы латинского алфавита), и был использован для программирования новой операционной системы «Юникс» (UNIX), работа над которой тоже не входила в официальные планы компании. Как только система «Юникс» получила признание, язык Си обрел популярность как так называемый язык среднего уровня, в котором удобство, краткость и мобильность языков высокого уровня сочетаются с возможностью непосредственного доступа к аппаратуре, что традиционно обеспечивалось ассемблером. Язык С удобен при решении, например, таких задач, как создание специальных эффектов или обработка изображений.

Название С++ ввел Рик Масситти летом 1983 года. Название указывает на эволюционную природу перехода к нему от С. ++ — это операция приращения в С. Язык программирования С сохранен как подмножество, поэтому сделанного в С акцента на средствах низкого уровня достаточно, чтобы справляться с самыми насущными задачами системного программирования.

Язык С++ разработан так, чтобы дать возможность разумным образом структурировать большие программы. Кроме того, он обладает возможностями, предназначенными для того, чтобы непосредственно и эффективно работать с аппаратными средствами, не заботясь о безопасности или простоте понимания. Он также имеет возможности, позволяющие скрывать такие программы за элегантными и надежными интерфейсами.

Языки Modula и ADA занимают достаточно скромное положение на рынке программных средств. Первый из них, Modula, был разработан все тем же Николаусом Виртом, автором знаменитого Pascal, как логическое его продолжение. Поэтому язык Modula очень похож на Pascal. Отличается Modula тем, что данные и код в этом языке представляются и хранятся в виде модулей. Отсюда и его название. Что же касается ADA, то это хоть и не сильно распространенный язык, но тем не менее заслуживший авторитет. Он родился в США по заказу американских военных. Его основная задача — разработка сверхнадежного программного обеспечения для военных нужд, которое, к тому же, должно иметь возможность использоваться повторно. Конечно же, этот язык используется и в гражданских разработках. Появление нового стандарта языка, ADA-95, обещает расширить границы его применения.

Разумеется, это не полный список.

Понятие о системе программирования, ее основные функции и компоненты.

 

Система программирования – это комплекс средств, предназначенный для создания и эксплуатации программ на конкретном языке программирования на ЭВМ определенного типа.

Средства для создания программ. Традиционными средствами разработки программ являются алгоритмические (процедурные) языки программирования. Для создания программы на выбранном языке программирования нужно иметь следующие компоненты:

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

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

Редактор связей (сборщик) – это программа, которая объединяет объектные модули отдельных частей программы и добавляет к ним стандартные модули подпрограмм стандартных функций (файлы с расширением.lib), которые содержатся в библиотеках, поставляемых вместе с компилятором, в единую программу, готовую к исполнению, т.е. создает исполнимый.exe файл. Этот файл имеет самостоятельное значение и может работать под управлением той (или такой же) операционной системы, в которой он создан.

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

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

Исходный текст программы можно получить без записи его вручную в текстовом редакторе. Существуют системы визуального программирования — RAD-среды (Rapid Application Development), которые, не исключая возможности записи программы вручную, позволяют создавать текст программы автоматически, путем манипуляций со стандартными элементами управления, включенными в RAD-среду. Поэтому для RAD-среды понятие «программирование» часто заменяют понятием «проектирование».

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

 

Основные системы программирования

 

Наиболее популярные языки программирования Соответствующие им визуальные среды быстрого проектирования программ для Windows
Бейсик (Basic) – для освоения требует начальной подготовки (общеобразовательная школа) Microsoft Visual Basic
Паскаль (Pascal) – требует специальной подготовки Borland Delphi
Си++ (С++)- требует серьезной подготовки Microsoft Visual С++
Ява (Java) требует серьезной подготовки Java: Borland JBuilder
<== предыдущая лекция | следующая лекция ==>
Апулей | Если коротко то компилятор сначала переводит программу на языке программирования в машинный и запускает, а интерпретатор по словам переводит в машинный язык и выполняет
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 2533; Нарушение авторских прав?; Мы поможем в написании вашей работы!


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



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.