
книги из ГПНТБ / Общее математическое обеспечение для решения задач экономики, статистики и управления на ЭВМ Минск-32 тезисы докладов и сообщений
..pdfтивного умета, т. к. заранее предполагала ограничение значности шифров. Необходимость увеличения значности шифров привела к несовместимости подсистем бухгалтерского и оперативного учета. Это потребовало разработки дополнительного комплекса программ, удорожанию АСУ как на стадии разработки, так и на стадии ее функционирования.
Основной принцип формирования информационной базы АСУ — сохранение ви да входной информации — был нарушен, т. к. упаковка была произведена, а программы по распаковке продуманы не были, что повлияло на дальнейшую эксплуатацию разработанных и внедренных задач. Упаковка и распаковка ин формации для получения возможности формирования промежу точных массивов любой структуры, с одной стороны, связана с экономией МЛ, а, с другой стороны, — с затратами машинного времени. Опытные данные показывают, что уплотнить инфор мацию удается обычно не более чем на 40—50%, что при стои мости в 32 руб. за МЛ длиной 732 м составляет экономию 14— 16 руб. Затраты, связанные с обработкой информации, которая может быть записана на эту МЛ, складываются в основном из:
—считывания информации с МЛ;
—выполнения команд пересылки содержимого ячейки, пере дачи управления, логической операции «сложить», «умножить», «сдвинуть»;
—записи информации на МЛ.
Учитывая затраты машинного времени при выполнении ука занных выше операций и потери машинного времени, связанные
сработой МЛ, можно показать, что:
—считывание информации с МЛ занимает 8 мин;
— выполнение команд развертки информации составляет
12мин;
—запись информации на МЛ занимает 8 мин.
Следовательно, затраты, связанные со сверткой и разверткой информации составляют 40 мин. машинного времени работы ЭВМ, или 20 руб. в стоимостном выражении.
В настоящий момент при стоимости одного часа работы ЭВМ в системе ЦСУ 30 руб. добиться значительной экономии в денежном выражении, применяя сжатие информации, не пред ставляется возможным.
Однако экономим физического объема МЛ и тенденция к сок ращению стоимости машинного времени говорит в пользу сжа тия информации на ЭВМ с возможностью ее дальнейшей раз вертки при формировании необходимых промежуточных мас сивов.
50
Формирование массивов должно сопровождаться параллель ным формированием каталогов, характеризующих данные мас сивы. Реквизитами каталогов могут быть: идентификатор, срок годности, полнота, структура и операторы обращения к програм ме обработки или переработки данной информации, которая должна находиться в библиотеке программ. Следовательно, фор мирование массивов также должно сопровождаться созданием системы программ обслуживания массивов для пополнения, корректировки, упаковки, распаковки и выборки информации. Должна быть продумана система запросов определенной инфор мации из массивов как внутри АСУ, так и при ее сопряжении с другими системами. Сроки годности массивов в связи с запро сами должны периодически пересматриваться. И при истечении срока годности определенного массива необходимо пересматри вать все запросы, относящиеся к этому массиву.
Вопросы, поднятые в настоящем сообщении, являются проб лемными.
А. Б. Шишкин
ЛЕНТОЧНАЯ СОРТИРОВКА ЭКОНОМИЧЕСКОЙ ИНФОРМАЦИИ
Сортировка экономической информации является одной из наиболее важных составных частей реализации экономических задач, и поэтому от того, как быстро будет пройден этап сорти ровки информации, зависит и время выполнения конкретных задач.
Но практика эксплуатации программ математического обеспе чения выявила недостатки ряда программ, используемых для реализации экономических задач, и, в частности, программы «Ленточная сортировка экономической информации».
Динамическое резервирование памяти значительно повысило бы эффективность программы «Ленточная сортировка» матема тического обеспечения. Возможность динамического резервиро вания сделало бы программу более универсальной, позволило бы сократить время выполнения сортировки информации. В много программном режиме выявляются преимущества вновь состав ленной программы «Ленточная сортировка».
Они заключаются в следующем: во-первых, новая программа «Ленточная сортировка» может использовать всю имеющуюся
51
в резерве оперативную память машины. Во-вторых, при работе
сновой программой увеличивается надежность работы с магнит ными лентами, так как во вновь составленной программе длина зоны информации при обращении к магнитной ленте не превы шает стандартной.
Пример: при решении экономической задачи «Баланс» длина
поля, отведенного для программы сортировки экономической информации «Лес 2», равнялась 44 листам памяти. Многопрограммность полностью исключалась, так как использовалось поч ти все МОЗУ, имеющееся в ресурсе ЭВМ. Но количество сбоев при работе было так велико, что сортировка с первого раза не проходила.
Программа выходила на аварийный останов раньше, чем за канчивался процесс сортировки. Это объясняется тем, что длина отведенного для сортировки поля была очень большой. Запись одной информационной зоны на магнитную ленту длилась 1,5—
3 |
сек. Если |
учесть, что скорость движения магнитной ленты |
2 |
м/сек, то |
нетрудно подсчитать, что для записи одной зоны |
(без сбоев) необходимо иметь бездефектный участок ленты дли ной 3—6 м. Если уменьшить длину поля, отведенного для сор тировки, то повысится надежность работы с магнитными лента ми, но тогда увеличится количество этапов слияния, холостых ходов — перемоток магнитных лент, увеличивается количество обращений к НМЛ, а, следовательно, и увеличивается время, необходимое для сортировки, удлиняется цикл решения задачи, что не всегда устраивает производство. Поэтому была поставлена задача создания такой программы, которая была бы более гиб кой и уменьшила время, необходимое для сортировки, а также имела возможность повторения этапов сортировки в случае воз никновения сбойных ситуаций при работе с магнитными лентами.
При составлении программы был использован метод балан сированного объединения. Программа использует четыре нако пителя на магнитной ленте, закрепление хоторых происходит в самой программе. Длина рабочих лент должна быть не меньше, чем длина исходной ленты, на которой записан массив. Первый этап сортировки включает в себя:
—перекомпоновку записи в виде, при котором сортируемые признаки находятся в первых ячейках;
—подтягивание информации в случае, если зоны исходного массива записаны на магнитной ленте не полными порциями;
—внутренняя сортировка информации с использованием прог рамм «СОРТ1» или «СОРТЗ» и распределение информации на рабочие ленты.
52
Последующие этапы сортировки — этапы слияния, которые осуществляются на рабочих лентах. На последнем этапе, перед записью на рабочую ленту, формируется начальный блок массива с именем, которое необходимо присвоить массиву после сорти ровки, а также перекомпоновка записи к исходному виду. Таким образом, на рабочей магнитной ленте получается упорядоченный массив с нужным именем.
Последним этапом является этап получения копий массива на личной ленте, каждую из которых можно записать с нужным именем. Имя массива при записи на личную ленту можно изме нять с пишущей машинки оператора.
В процессе выполнения этапов слияний возможны возникно вения сбойных ситуаций при работе с магнитными лентами. В этих случаях предусмотрены различные способы повторения сбойных ситуаций. Например, при невозможности записи инфор мации на рабочую ленту программа выходит на директиву опроса оператора о прекращении сортировки или замене рабочей ленты. При этом этап слияния, на котором возник собой, начнется заново.
Если возник сбой при чтении информации с магнитной ленты, то программа выходит на директиву опроса оператора о прекра щении сортировки или о ее продолжении. При этом необходимо попытаться устранить причину сбоя — почистить головку НМЛ, протереть ленту. После соответствующей директивы оператора о повторении будет подведено начало магнитной ленты, пропу щено нужное количество зон до сбойной и произведена попытка прочитать сбойную зону. Как правило, в 80% случаев можно устранить сбойную ситуацию; в 20% — устранить собой не удает ся из-за плохой записи на магнитной ленте или возникновения дефекта на магнитной ленте после записи информации.
Динамическая область памяти, не должна быть меньше трех кратной длины зоны. Если длина меньше трехкратной, то для выполнения задания необходимо увеличить количество листов памяти.
Эта область памяти разбивается на три равные части, каждая из которых кратна длине зоны информации. Упорядочение ин формации происходит в этой области.
Вновь составленная программа «Ленточная сортировка» имеет
исвои недостатки:
—сортировка информации происходит зонами не более стан
дартной;
— в программе не закрепляется динамическая область, т. е. после загрузки сегмента сортировки мы должны сразу передать управление для работы этого сегмента;
— сортировка — только одноленточных массивов.
53
Н. А. Турковская
ПРОГРАММА ПЕЧАТИ НА АЦПУ ВЫХОДНЫХ ТАБЛИЦ СТАТОТЧЕТНОСТИ
Программа производит оформление и печать выходных таб лиц статистической отчетности. Информационные массивы могут быть записаны на МЛ в сжатом виде (по тетрадам). Обеспечи вается последовательный вывод на печать таблиц, не вмещаю щихся по ширине на АЦПУ.
Таблицы можно разбить на несколько логически связанных подтаблиц. По программе можно печатать выходные таблицы, имеющие числитель и знаменатель, записанные в виде отдельных таблиц. При выводе на печать производится анализ на равенство строк числителя и знаменателя, при равенстве их печатается толь ко одна строка.
Программа производит дешифровку заголовка таблицы (по шифрам министерств, главков, городов) ее названия, подлежаще го таблицы (шифры строк) и производит расстановку запятой в нужных местах таблицы.
Программа работает в трех режимах:
режим 1 — настройка программы осуществляется по заказам 01, 02, 03, вводимым с перфокарт. Этот режим удобен, если необходимо распечатать небольшое количество таблиц;
режим 2 — информация о формируемых таблицах, записывает ся на МЛ в виде каталога выходных отчетов (КВО). Заказ на перфокартах содержит только наимено вание таблиц, которые требуются распечатать;
режим 3 — в этом режиме производится распечатка отдель ных входных документов. Заказ вводится с перфо карт и содержит шифры предприятий, документы которых следует распечатать.
В программе предусмотрена реакция на следующие ситуации:
— если произошел сбой при вводе массивов с МЛ в МОЗУ, на ПМ печатается сообщение о сбое в соответствующей стандарт ной программе; сбойная ситуация обрабатывается, печатается значение сумма
тора, в зависимости от которого работа программы продолжает ся или организуется выход из программы.
— если сбойная ситуация возникает при формировании таб лицы, печатается сообщение, на АЦПУ выдается оформленная часть таблицы, организуется выход из программы.
54
В. П. Иваненко
ОБМЕН И СОРТИРОВКА НА ЭВМ «МИНСК-32»
Разработка автоматизированных систем управления неизбеж но приводит к постановке и решению на ЭВМ задач, оперирую щих информационными массивами, размеры которых значитель но превосходят оперативное запоминающее устройство ЭВМ. При решении таких задач используют значительный объем до полнительной памяти внешних запоминающих устройств.
Конструктивные возможности ЭВМ «Минск-32» позволяют выполнять операции обмена параллельно с другими операциями. Эта возможность не используется в программах обмена системы математического обеспечения ЭВМ «Минск-32», однако прове денные эксперименты показали, что использование вышеуказан ной возможности ускоряет время обмена в 1,2—1,5 раза в зави симости от типа внешнего устройства. Например, при вводе ин формации с перфокарт можно вообще отказаться от стартстопного режима ввода, что весьма эффективно сказывается на вре мени решения на ЭВМ задач, связанных с вводом больших мас сивов перфокарт.
Программа ввода исходных текстов (ВКАРТ) заменена ана логичной по результатам работы программой (ВИТПК), раз работанной в секторе математического обеспечения. Экономи ческая эффективность от использования этой программы соста вила 14000 руб в год.
В настоящее время проводятся испытания системы программ обмена с перекодировкой и редактированием в соответствии с описанием формата. Правила составления формата аналогичны правилам, принятым в алгоритмическом языке ФОРТРАН. Спецификации, используемые при составлении формата могут быть взяты из ФОРТРАНЕ, кроме того, разработана таблица спецификаций.
В завершающей стадии разработки находится система прог рамм обмена на уровне записей, результаты работы которой ана логичны соответствующей системе программ официального ма тематического обеспечения ЭВМ «Минск-32», при этом скорость работы программ существенно увеличивается.
В основу предлагаемых программ заложен метод переменного буфера. Сущность метода переменного буфера заключается в следующем:
—в качестве буфера обмена используются два поля обмена;
—программа организуется таким образом, что во время об-
55
мена информацией между первым полем и внешним устройством выполняются команды, обрабатывающие е оперативной памяти информацию второго поля, а во время обмена со вторым полем обрабатывается информация первого поля;
— обмен производится в режиме без ожидания конца работы внешнего устройства.
Этот метод обмена дает выигрыш во времени даже для внешних устройств селекторного канала.
Модуль обмена построен таким образом, что в приостанов ках между обменом организуется выход в программу тользователя, где можно расположить некоторые вычислительные блоки или произвести рекурсивное обращение к модулю обмена с целью работы с другим внешним устройством. Для всех внешних уст ройств используется один общий модуль обмена.
Использование предлагаемых программ при ленточной сор тировке информации позволяет ускорить сортировку на 30%.
Часто бывает необходимым выполнение на ЭВМ сортировки массивов записей переменной длины, поэтому разработана соот ветствующая программа внутренней сортировки. В этой програм ме применен метод слияния таким образом, что каждой записи поставлена в соответствие одна ячейка оперативной памяти, в которой хранится абсолютный адрес записи, и все операции перемещения записей заменены операциями перемещения их аб солютных адресов. Таким образом, сортировка записей перемен ной длины сведена к сортировке записей фиксированной длины. Программа внутренней сортировки позволяет пользователю под ключать свои модули, реализующие сравнение признаков и объе динение записей с равными признаками. При ленточной сорти ровке второй и последующие этапы существенно не отличаются от принятых в официальном математическом обеспечении, заме нены лишь программы обмена.
Предлагаемые программы рекомендуются к использованию на ЭВМ «Минск-32» в качестве стандартных программ.
И. Г. Глонти, М. М. Сепиашвили, М. Г. Цуладзе, Ю. А. Шахов
КВОПРОСАМ ВВОДА И ОРГАНИЗАЦИИ МАССИВА
ВЭВМ «МИНСК-32»
Предлагаемый способ осуществления ввода не зависит от конкретной ЭВМ. Настоящий алгоритм осуществлен на ЭВМ
56
«Минск-32». Изменив количество разрядов, описание паспорта и некоторые константы, предлагаемый алгоритм легко перенести на любую ЭВМ.
1. Описание перфокарты, подготовленной для ввода в СПМ
Перфорационную карту, подготовленную для ввода в СПМ, на которой в предварительно согласованной последовательности стандартно наносится начальная информация, в дальнейшем будем именовать макетом. Для машины «Минск-32» могут быть использованы все 80 колонок перфокарты. 10 позиций (строчек) макета (с 0-й по 9-ю) используются для нанесения числовой ин формации, а 11-я и 12-я позиции отведены для отметок указы вающих некоторые признаки.
Пробиваемая на перфокарте информация может быть пред ставлена числом (количественный показатель) или кодом (ка чественный показатель). Для установления отличия между чис лом и кодом вводится отметка — тип пробивки.
Числа на макетах представляются в фиксированной форме. Это значит, что предварительно устанавливается наибольшая разрядность числа и расположение запятой, а потом все числа записываются в одной форме, например: числа 67; 8,7; 12,22; 0,8; записываются в форме 67,00; 06,70; 12,22; 00,80. Числа могут быть как положительными, так и отрицательными. Непробитые колонки макета в реальной задаче означают отсутствие сведений, и принципиально отличаются от нулевого значения.
При составлении программы, реализующей данный алгоритм, договорились отрицательный знак числа указывать пробивкой в 11-й позиции, а отсутствие замера — пробивкой в 12-й позиции над старшим разрядом колонки, причем в этом случае ни в одной колонке, отведенной под данное число или код, ничего не проби вается. Чтобы не нарушать общность, если в массиве чисел имеет ся хоть одно отрицательное число, то для всех положительных чисел, находящихся в этих колонках, в колонке знака пробивают
ся нули. |
О р г а н и з а ц и я ч т е н и я м а к е т а на ЭВМ. Для |
2. |
чтения макета необходимо подать сведения: о разрядности каж дого числа или кода, о типе пробивки, об окончании макета. Эти требования обусловили необходимость сопрЬвождать каждый макет описанием макета — информационной картой, в дальней шем именуемой паспортом макета. Таким образом, сведения
озаконе размещения на перфокарте (сведения о макете) задаются
спомощью паспорта макета.
57
Естественно, что расположение сведений на перфокарте пас порта строго соответствует расположению материала на макете
ине может быть нарушено. Для указания сведений о числе, коде
иколичестве пустых (пропущенных) колонок на паспорте макета выделяются по две колонки, в первых из них пробиваются сим волы «г» — число, «к» — код, и «п» — пусто. Во вторых колон ках указывается N — количество разрядов числа, кода или коли чество пустых колонок (N ^ 9). Кроме этих символов, исполь зуются еще два: «0» — признак конца паспорта и «В» — признак конца всех паспортов.
Кроме того алгоритм ввода предусматривает соблюдения следующего условия: каждый новый паспорт начинается с новой перфокарты. Таким образом, паспорт может помещаться на од ной или нескольких перфокартах, лишь бы выполнялось указан ное выше условие.
Для сообщения программе имени массива и признака конца информации массив перфокарт, пробитых на СПМ, снабжается начальным (НБ) и конечным (КБ) блоками, как это принято при организации массивов в СМО «Минск-32».
3.О п и с а н и е п р о г р а м м ы . Программа составлена на ЯСК. Она читает и расшифровывает паспорта макетов и поме
щает пробитую на перфокартах информацию на магнитную ленту, причем, для информации на ленте сохранена та же последователь ность, что и на перфокартах. Числовая информация записана в виде двоично-десятичных чисел, а коды изображаются семи разрядными символами.
Перенос информации, описываемой одним паспортом макета, из одной зоны в другую не производится.
В программе предусмотрен ряд сбойных ситуаций:
1. Начальная перфокарта не соответствует перфокарте НБ, принятой в СМО «Минск-32».
Необходимо исправить перфокарту и вернуть для ввода. 2. Ошибка в составлении паспорта макета (неправильно за дан один из признаков «г», «К», «П», «0», «В», или N — не циф
ровой код).
Необходимо исправить соответствующую перфокарту пас порта макета и вернуть все перфокарты паспортов для ввода.
3.Сбой при вводе перфокарт с числовым материалом (на рушена четность, или другие причины).
4.Отперфорированное на перфокарте число (или код) не соответствует числовому коду, принятому в СМО «Минск-32».
Вобоих случаях необходимо исправить и вернуть эту перфо карту для ввода.
58
Идентификатор программы — ЫСПМЛ. Использованы следующие внутренние программы:
—ОТЫМЛ — открыть выходной массив на магнитной ленте;
—ЗПЗ — записать запись;
—ЗА Ы — закрыть выходной массив;
— ЦГ102 — перевод числа |
с плавающей запятой |
из |
кода |
ГОСТ 10859-64 в двоичную систему счисления; |
в |
коде |
|
— ГДЦ — перекодировка |
числа, представленного |
||
ГОСТ 10859-64 в десятичное целое число. |
|
ячеек |
|
Программа занимает 13168 |
ячеек основного поля, 37378 |
рабочего поля и 168 ячеек индексного поля (без учета внутренних программ).
Л. И. Федоров, Д. А. Ржаницын, А. В. Пастуховский
ПРОГРАММНАЯ РЕАЛИЗАЦИЯ УСТРОЙСТВА
СПРЯМЫМ ДОСТУПОМ НА НМЛ «МИНСК-32»
ВНВЦ МИЭИ разработана система программ, реализующих прямой доступ к магнитной ленте. Название системы «АДРЕС», (тем же именем называются ленты, используемые системой). Программы системы выполняют все основные процедуры по заведению и эксплуатации лент прямого доступа. Для их работы не требуется никаких конструктивных переделок или дополнений основного комплекта «Минск-32».
1- |
Состав системы: |
я программа — РААДР — «Разметка ленты «Адрес»; |
|
2- |
я программа — ФОАДР — «Формирование ленты «Адрес»; |
3- |
я программа — ЗААДР «Закрепление ленты «Адрес»; |
4- |
я программа — ОАДР — «Обмен с лентой «Адрес»; |
5- я программа — КОАДР — «Распечатка на УПЧ копии ленты «Адрес»;
6- я программа — НМЛ — Обращение к накопителю на МЛ. Программы написаны в соответствии с требованиями к стан
дартным программам СМО. Язык программирования — ЯСК. Часть программ — РААДР, ЗААДР, ОАДР и НМЛ ориентиро вана на использование в комплексе автоматизированной обра ботки данных. Это значит, что в них сведены к минимуму выход ные сообщения и предусмотрены выходы по различным сбойным ситуациям.
59