Файл: Махров, Н. В. Параметры разработки современных автоматизированных систем управления предприятиями.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.10.2024

Просмотров: 80

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

обеспечением (МО) 12. Мы будем говорить в дальней­ шем о программно-математическом обеспечении АСУП.

На рис. 4.1 приводится один из вариантов структур­ ной схемы программно-математического обеспечения АСУ.

Рис. 4.1

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

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

Управляющие программы делятся на три основных класса: главный диспетчер, диспетчер заданий, суперви­

12 С. С. Лавров. Математическое обеспечение ЭВМ.—«Наука и жизнь», 1971, № 1.

93

зор. Главный диспетчер осуществляет взаимодействии ЭВМ с объектом управления. Па рис. 4.2 представлены схемы соединения ЭВМ с объектом управления.

Рис. 4.2

Руководствуясь качественными различиями процессов обработки информации в АСУП, совокупность программ обслуживания объекта удобно разделить на программы, обслуживающие результатные (отчетно-учетные) подси­ стемы и плановые подсистемы13.

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

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

13М. И . Крулькевич. Система математического обеспечения АСУ.— «Теоретические основы создания и внедрения АСУ». Донецк, изд-во Донецкого государственного университета, 1971.

94


По функциональному назначению программы програм­ много комплекса АСУП подразделяются на следующие группы.

1. Программы, реализующие процедуры работы с боль­ шими массивами данных:

а) программы первоначального ввода и формирования подходных массивов;

б) программы поиска данных в массивах при решении конкретных задач;

в) программы обновления массивов данных.

2.Разнообразные программы, обеспечивающие работу электронно-вычислительной системы в контуре управле­ ния реального объекта.

3.Программа, координирующая работу всей вычисли­ тельной системы.

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

Для устойчивого функционирования необходима орга­ низация комплекса мероприятий по текущему ведению и внесению изменений в массивы нормативно-справочных данных предприятия. Организации обновления (корректи­ ровка) массивов нормативно-справочных данных состоит в разработке системы процедур для обработки потоков изменений. К этой системе процедур относятся стандарт­ ные поисковые процедуры и типовые процедуры внесения изменений, обеспечивающие переписывание, исключение и сдвиги информационных массивов.

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

обслуживание устройств приема-выдачи информации, передаваемой по линиям связи ЭВМ с объектом;

контроль достоверности информации на всех этапах обработки их в ЭВМ;

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

вкоторых это не предусмотрено конструктивно.

Таким образом, состав программ программно-матема­

тического обеспечения АСУП является достаточно об-

95

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

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

Трансляторы могут быть с машинно-ориентированно­ го языка. Они являются составной частью всякой систе­ мы математического обеспечения. Кроме указанных транс­ ляторов сейчас почти во всех системах математическо­ го обеспечения имеются трансляторы с проблемно-ори­ ентированных языков (АЛГОЛ, КОБОЛ, ПЛ-1 и т. д.).

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

В принципе любой алгоритм задачи может быть опи­ сан в терминах элементарных операций или в виде про­ граммы для ЭВМ. И если бы программы, применяемые при решении задач, были таким описанием, то вопрос о составлении программы сводился бы к «переводу» алго­ ритма на «язык» команд или элементарных операций ма­ шины. Однако такой перевод требует расширения объе­ ма описания алгоритма, так как необходимо учитывать распределение и объем памяти ЭВМ для числового ма­ териала и программы, а также для решения остальных задач, число которых в АСУ может измеряться сотнями.

Известно, что скорость ручного способа программиро­ вания составляет в среднем около пяти команд в час.

Она существенно зависит от квалификации программиста, сложности решаемой задачи, объема информации, тех­ нической характеристики ЭВМ и других причин. Напри­ мер, на автозаводе им. Лихачева программа по учету заработной платы создавалась примерно семь месяцев. Насчитывала программа 8 тыс. команд. Отсюда следует, что подготовка программ для такого большого объема за­ дач, который имеется в АСУ, весьма трудоемка и, есте­

ственно, требует быстрого повышения производительно­ сти труда программистов.

Накопленный опыт за рубежом и в нашей стране свидетельствует о том, что применение различных спе-

90


циалытътх алгоритмических языков и техники автомати­ ческого программирования позволяет довести производи­ тельность труда по программированию до 250 команд в час и при этом процесс программирования может осуще­

ствляться

не обязательно

математиками-программиста-

ми, а любым инженером или техником.

Для автоматизации труда

программистов разработан

ряд новых

методов описания алгоритма решения задач,

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

Входной информацией для транслятора является за­ пись алгоритма решения задачи на алгоритмическом язы­ ке. Уровень применяемого алгоритмического языка обыч­ но соответствует способу автоматизации процесса про­ граммирования. Таких уровней известно пять.

Пулъ-уровенъ — обычный ручной способ программиро­ вания в языках конкретных машин.

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

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

Третий уровень — языки типа АЛГОЛ, ФОРТРАН, КОБОЛ и т. д. Всего в настоящее время известно не­ сколько сотен языков этого уровня. Наиболее важными из них являются языки, предназначенные для описания экономико-математических моделей, решения инженерно­ экономических задач и обработки научно-технической ин­ формации.

Четвертый уровень — модульное или блочное програм­ мирование. Это самый прогрессивный и наиболее эффек­ тивный способ автоматизации программирования.

В наибольшей мере сейчас используется первый уро­ вень алгоритмического языка и программирования. Далее следует третий уровень, затем второй. И в наименьшей

А

Н. В. Махров

97

 

 


мере применяется четвертый уровень, т. е. блочное программирование.

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

Область применения

 

Алгоритмические языки

Обработка экономической

ин­

КОБОЛ, АЛГЕК, АЛГЭМ,

формации

 

 

РАГШДРАЙТ

Научно-технические расчеты

ФОРТРАН, АЛГОЛ-60,

Моделирование

сложных

си­

АЛЬФА

СИМУЛА-67, SIMSCRIPT,

стем и процессов

 

 

GPSS

Нечисловая обработка инфор­

LISP, COMIT, НЛ-V,

мации (информационный поиск,

SLIP, SNOBOL

машинный перевод и т.д.)

 

АЛГОЛ-67, PL/1

Универсальные

языки

про­

граммирования

 

 

 

КОБОЛ сейчас единственный широко распростра­ ненный язык высокого уровня для программирования экономических задач.

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

В КОБОЛе основной единицей ввода-вывода являет­ ся массив (файл) данных. Каждый файл состоит из за­ писей. Один и тот же массив используется в различных программах в зависимости от характера решаемых эконо­ мических задач. Описание файлов очень строгое и не до­ пускает изменений. В нашей стране для разработки язы­ ка, приспособленного для алгоритмизации экономических расчетов, в 1963 г. была создана специальная комиссия, которая па базе АЛГОЛ-60 разработала алгоритмический язык АЛГЭК.

Этот язык характеризуется следующими особенностя­ ми: введением текстовых переменных и операции мани­ пулирования над ними; аппаратом описания сложных по

98


структуре информационных процессов; наличием многопараметрических выражении и способов обращения к от­ дельным значениям параметров. В ЛЛГЭКе предусмотре­ но и реализовано в виде указателей подмассивов опери­ рование сразу всей совокупностью данных, что весьма необходимо в условиях экономической информации, где преобладают массивы и потому нужен удобный аппарат оперирования ими. Наконец, АЛГЭК предлагает набор стандартных процедур ввода и вывода. Это позволяет легко обращаться к тем пли иным дробш.щ частям мас­ сивов информации, излагая при этом в компактной фор­ ме алгоритмы при обработке данпых таблиц, массовых документов и т. и.

Для программирования экономических задач в нашей стране разработан также язык АЛГЭМ, а в Англии — РАПИДРАЙТ. Последний создан на базе КОБОЛа, в ко­ тором опущены некоторые сложные второстепенные кон­ струкции.

Наибольшей известностью пользуется разработанный в США язык ФОРТРАН. Слово «фортран» образовано из начальных слогов двух английских слов, переводи­ мых дословно как «переводчик формул». Если попытать­

ся дать определение термина «фортран»,

то окажется,

что с ним связаны:

 

1) определенный язык, опубликованный

впервые в

1956 г. и находящийся на стыке английского языка и математики, а также любой диалект этого языка;

2)программа, называемая исходной программой ре­ шения любой задачи, которая написана на языке ФОРТРАН;

3)программа на машинном языке, называемая ком­ пилятором, по отношению к которой входными данными

является исходная, программа па ФОРТРАНе, а выход­ ными — эквивалентная программа на машинном языке;

4)программа на машинном языке, полученная после обработки исходной программы компилятором ФОРТРАНа

иназываемая объектно-программной;

5)специальные бланки (или формы), специальные карты и т. и., употребляемые при подготовке программ

на ФОРТРАНе ,4.41

14Я Джермейн. Программирование на IBM-360. М., изд-во «Мир»

1971.

4* 99