Целевое назначение систем программирования. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Целевое назначение систем программирования.



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

Машинно-ориентированные.

Машинно-ориентированные системы программирования имеют вход­ной язык, зависящий от особенностей построения определенной машины или семейства машин. Наиболее типичными представителями таких систем программирования являются системы символического кодирования и ассемблеры.

Системы символического кодирования.

Система символического кодирования (автокод) - одна из первых систем, созданных для автоматизации программирования с использованием входных языков по принципу "один к одному" (например, широко распространенный в конце 1970 годов автокод Чайковского). Этот принцип предполагает, что одному символическому оператору соответствует одна машинная команда или константа. Смысл применения подобной системы состоит в использовании символических обозначений вместо машинных кодов, в применении автоматического распределения памяти и присвоении действительных адресов.

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

Ассемблеры.

В настоящее время широкое применение из машинно-ориентирован­ных языков нашел язык ассемблера. Как правило, в языке ассемблера существует четыре типа операторов:

1) мнемоническая команда - соответствует одной машинной команде, в ней вместо машинных кодов операций используются мнемонические обозначения;

2) псевдокоманда - служит для передачи информации программе-транслятору и не порождает команд на машинном языке;

3) макрокоманда - соответствует нескольким машинным командам;

4) условная команда ассемблера - используется для управления процессом трансляции.

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

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

Машинно-независимые системы программирования строятся на основе процедурно-ориентированных и проблемно-ориентированных языков.

Процедурно-ориентированные.

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

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

Проблемно-ориентированные.

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

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

Среди проблемно-ориентированных систем все большее значение приобретают непроцедурные (описательные) способы, ориентированные на «нетрадиционные» применения вычислительной техники: использование естественного языка, построение банков данных и баз знаний, создание экспертных систем и т. п., которые принято относить к проблематике искусственного интеллекта.

Наиболее известными из непроцедурных языков являются SQL-подобные языки, а также язык ПРОЛОГ. Программа, написанная на них, не содержит формул, предписаний, что сделать для получения результата. Программа констатирует, какой результат желателен, однако не указывает как этого достичь, Иными, словами, программа описывает не, процедуру решения задачи, а логическую модель предметной области - некоторые факты относительно свойств предметной области и отношений между этими свойствами, а также правила вывода новых свойств и отношений из уже заданных.



Поделиться:


Последнее изменение этой страницы: 2020-12-09; просмотров: 89; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.224.214.215 (0.007 с.)