
книги из ГПНТБ / Общее математическое обеспечение для решения задач экономики, статистики и управления на ЭВМ Минск-32 тезисы докладов и сообщений
..pdf5. Блок компоновки — преобразует исходную информацию в заданную структуру для организации информационных масси вов на магнитных лентах;
6. Блок вывода на магнитную ленту информационных масси вов — осуществляет запись информации на магнитную ленту
всоответствии с требованиями СМО «Минск-32»;
7.Блок вывода ошибок на печать.
Программа оформлена как стандартная и включена в библио теку СМО «Минск-32».
Г. Е. Герштейн, Т. И. Перельштейн
ПРОГРАММА «ПЕРЕВОД ДАННЫХ, ПОЛУЧЕННЫХ НА ПЕРИФЕРИЙНЫХ УСТРОЙСТВАХ (ТИПА «АСКОТ КЛАССА 170 С ПЕРФОПРИСТАВКОЙ С 8021/2
ИЭФА «ЗОЕМТРОН» 383, 385) ИЗ КОДА МТК-2
ВДЕСЯТИЧНЫЙ. (АСКОТ).
Программа предназначена для ввода, контроля и перевода в десятичную систему числовой информации, заключенной между границами перфоленты и (по требованию внешней программы) вывода на магнитную ленту или на печать результатов перевода.
Программа осуществляет сопряжение с ЭВМ «Минск-32» бухгалтерских автоматов «АСКОТА» класса 170 с перфопристав кой С 8021/2 и ЭФА «ЗОЕМТРОН» 383, 385.
Имеется в виду, что при составлении и обработке первичных документов на указанных периферийных устройствах автомати чески на технический носитель — перфоленту выводятся данные, необходимые для дальнейшей обработки на ЭВМ. Вывод данных производится в международном телеграфном коде №2 (МТК-2), что дает возможность их передачи по каналам связи и ввода в
ЭВМ «Минск-32».
Требования к исходной перфоленте продиктованы возмож ностями периферийных автоматов, передачи по каналам связи, ввода в ЭВМ и заключаются в следующем:
—массив информации заключен между границами (код МТК-2, либо произвольный, определяемый внешней програм мой, либо «перевод на латынь»);
—массив состоит из записей соответствующих строке обра батываемого документа, разделителем записи является код МТК-2 «перевод на цифры»;
70
—запись может быть переменной или фиксированной длины. Разделителем элементов записи чисел может служить любой не цифровой код МТК-2, указанный внешней программой;
—для записей, длина которых больше одного элемента, пос ледний элемент записи является контрольной суммой предыдущих;
—признаком ошибочной записи может служить любой не цифровой код МТК-2, указанный внешней программой;
—на перфоленте могут присутствовать служебные пробивки, необходимые для ее передачи по каналам связи такие, как «воз врат каретки» и «перевод строки» кода МТК-2.
Информация вводится в отведенное программой «АСКОТ» поле. Максимальное количество символов, подлежащих вводу, не должно превышать 10000.
Затем информация переводится в десятичную систему. При этом производится ее контроль и, при обнаружении нечисловых пробивок, выводится сообщение о них на пультовую пишущую машинку ЭВМ.
Вторичным контролем информации является проверка запи сей на совпадение контрольных сумм. Записи, не выдержавшие вторичной проверки, если их длина не превышает двадцати чисел, выводятся на устройство печати в качестве строки таблицы. Если длина записи больше двадцати, на печать выводится первый элемент записи, последний элемент записи и контрольная сумма, подсчитанная ЭВМ.
Врезультате работы программы «АСКОТ» в поле, зарезерви рованном внешней программой, находится;
0. если на перфоленте не было ошибок;
Впервой его ячейке +1, если на перфоленте были ошибки; Начиная со второй ячейки — все верные числа исходной перфо
ленты в десятичном коде в исходном порядке по одному числу в ячейке.
По требованию внешней программы поле результатов может быть выведено на магнитную ленту и на устройство печати.
В. И. Чмель
УНИФИЦИРОВАННАЯ СИСТЕМА ВВОДА, КОНТРОЛЯ
ИФОРМИРОВАНИЯ МАССИВОВ
1.Анализ экономических задач, решаемых с помощью ЭВМ, показывает, что исходная информация, прежде чем быть исполь
зованной в конкретной задаче, проходит традиционные типовые стадии обработки:
1)ввод информации с исходных носителей, контроль, форми рование и запись ее в память ЭВМ;
2)вывод на печать контрольных табуляграмм по введенным порциям информации с получением контрольных итогов;
3)корректировка ошибочных порций информации;
4)передача верной информации для решения задач на ЭВМ.
2.Приведенные выше стадии обработки информации в усло
виях задач, использующих данные разнообразной структуры, при большом количестве макетов исходных носителей требуют разработки универсального математического обеспечения, уни фикации представления информации на машинных носителях
иоптимальной технологии обработки ее на ЭВМ.
3.Система ввода, контроля и формирования массивов на МЛ предполагает следующие технологические этапы обработки ис ходной информации:
1) ввод информации
Ввод исходной информации осуществляется в трех режимах (с ПК, ПЛ и МЛ) порциями, относящимися в общем случае к массивам различных задач. Параллельно с вводом про изводится вывод на печать контрольных табуляграмм по введенным порциям с накоплением необходимых итогов. Введенная информация хранится в массиве общего нако пителя на МЛ;
2) проверку контрольных табуляграмм
Контрольные табуляграммы проверяются визуальным и счетным контролем, определяются неверные порции ин формации, ошибочные записи и создается корректирующий
массив; |
\ |
3) корректировку общего накопителя на МЛ |
|
Корректировка общего накопителя на МЛ |
заключается |
в просмотре всех хранящихся в нем порций информации и выполнении над ними, согласно корректирующему массиву, следующих операций:
а) присвоение каждой порции информации признака при годности ее к использованию в задачах (РАЗР. — раз-
72
решение использования, ЗАПР. — запрещение исполь зования, БРАК. — отказ от полностью непригодной информации);
б) корректировка записей (присвоение или удаление приз нака ошибки в записи, замена ошибочных реквизитов их верными значениями).
В процессе выполнения корректировки на УПЧ выдаются протоколы корректировки: контрольные табуляграммы по кор ректирующим массивам и справка о качественном составе от корректированных порций информации на накопителе.
4)отбор массивов из общего накопителя на МЛ по задачам
На этом этапе из общего накопителя по соответствующим ключам производится отбор верных порций информации и формирование массивов необходимого состава и струк туры для решения конкретной задачи. Здесь же произво дится освобождение общего накопителя от неверных пор ций информации и от отобранного массива.
При отборе на УПЧ выдается справка о составе отобран ного массива (итоги по вошедшим в него порциям инфор мации, итоги по всему массиву) Ввод, контроль, корректи ровка и отбор порций информации производится непрерыв но с использованием постоянного общего накопителя ин формации на МЛ.
4.Система обладает рядом качеств, делающих ее удобной в настройке и в эксплуатации. Они заключаются в следующем:
1)настройка комплекса программ системы заключается в создании массива управляющих таблиц на МЛ, описываю щих структуру обрабатываемой информации, подготовка которого может быть выполнена человеком, не знакомым
с программированием;
2)наличие общего накопителя информации на МЛ для масси вов всех задач, обслуживаемых системой, позволяет сущест венно сократить количество используемых на ЭВМ маг нитных лент и дает возможность за один просмотр нако пителя откорректировать все имеющиеся в нем массивы;
3)использование при работе комплекса массива управляющих таблиц дает возможность работы с универсальными прог раммами, что существенно сокращает библиотеку рабочих программ, используемых для формирования массивов;
4)выделение ввода, контроля и формирования массивов ин формации в самостоятельный этап, предшествующий ре-
73
шению на ЭВМ любой задачи, позволяет централизовать этот процесс и обеспечить надежное и качественное его вы полнение.
В состав комплекса входят следующие программы:
—программа ввода информации с ПК, ПЛ, МЛ параллельной распечаткой контрольных табуляграмм;
—программа выдачи на УПЧ справки о качественном составе общего массива на МЛ;
—программа отбора массивов по задачам из общего нако пителя на МЛ;
—программа ввода, формирования и записи на МЛ массива управляющих таблиц.
Массив управляющих таблиц содержит описание исходной информации на машинных носителях, структуру и состав форми
руемых массивоз, вид контрольных табуляграмм и прочую спра вочную информацию.
В одном массиве управляющих таблиц могут содержаться описания 200 ч- 300 макетов исходной информации.
Система ввода, контроля и формирования массивов хорошо увязывается с экономическими задачами, программируемыми с использованием алгоритмического языка КОБОЛ на базе рас пространенного транслятора ТК-32.
Е. Н. Калинина
ЭВРИСТИЧЕСКИЙ АЛГОРИТМ ОПТИМИЗАЦИИ РАСПРЕДЕЛЕНИЯ СПРАВОЧНИКОВ МЕЖДУ МОЗУ И МАГНИТНОЙ ЛЕНТОЙ ПРИ ФОРМИРОВАНИИ ВЫХОДНЫХ ДОКУМЕНТОВ
Рассматриваемая задача относится к классу задач оптимизации массивов информации по типам запоминающих устройств ЭВМ. В задачах обработки массивов информации, в частности в зада чах АСУ, производительность работы ЭВМ в значительной сте пени зависит от выбранного варианта размещения массивов в памяти ЭВМ. Вариант размещения определяется объемами мас сивов, типом упорядоченности, частотой использования, быстро действием запоминающих устройств.
Для вывода каждой строки выходного документа на печатаю щее устройство йеобходима декодировка большого количества признаков с помощью большого количества справочников, содер
74
жащих информацию о преобразуемых признаках в следующем виде:
Код признака |
^ |
Текстовое значение признака |
Основной массив и справочники предварительно сформиро ваны на магнитной ленте, причем, их общий объем намного превышает объем ОЗУ. Так как при формировании выходных до кументов нет соответствия между расположением признаков в справочниках и в записи основного массива, то для расшифровки каждого признака практически требуется просмотр всего справоч ника и, следовательно, затраты машинного времени оказываются значительными.
В настоящей работе предлагается эвристический алгоритм, реализация которого обеспечивает на практике уменьшение затрат которого обеспечивает на практике уменьшение затрат машинного времени в 2—5 раз. В задаче необходимо найти такой оптималь ный вариант распределения информации, чтобы суммарное время обработки было минимальным при следующих ограничениях й допущениях:
1. Время обращения к МЛ состоит из времени поиска, времени считывания информации и зависит от величины считываемой порции;
2.Все п записей основного массива имеют постоянную длину
Р= и • р, где р — длина одного документа, Р — объем основного массива;
3.Для каждой записи нужны все справочники (частота исполь зования справочников предполагается одинаковой;
4. |
Объемы справочников |
различны. Общий объем спра |
|||
вочников |
W — £ Wt, |
W<^p |
|||
5. ОЗУ |
I=. I |
|
следующим образом: |
||
распределяется |
|||||
|
|
|
|
|
“Ь Аг “I- ^5> |
где |
Ц — «окно» для основного массива; |
||||
|
Li — часть ОЗУ, |
где |
|
помещаются наиболее короткие из |
|
|
|
справочников; |
|
|
1а — «окно» для оставшихся на МЛ справочников; 4 ,у — часть объема ОЗУ в ячейках, где помещается необхо
димая для работы программы информация.
75
Минимизируется |
общ ее время обработки Т = T t + Т 2 |
|||
|
|
г = |
|
+ ( W — LD В ■п + В ■Р; |
|
|
|
Тг |
Т2 |
где: |
7 \ — общее время поиска информации на МЛ; |
|||
|
Т2— общее время считывания информации с МЛ; |
|||
|
t поиска |
— время поиска информации на МЛ при одном обра |
||
|
|
щении к МЛ; |
|
|
|
В — время считывания единицы информации с МЛ; |
|||
|
-j- |
— число обращений к МЛ за основным массивом; |
||
|
3 |
— число обращений к МЛ за справочниками, находя- |
||
|
щимися на МЛ (для одного документа); |
|||
|
В ■L, — время |
считывания |
одной порции документов; |
|
|
В ■Is — время |
считывания |
справочников в окно за 1 раз. |
Алгоритм реализуется в 3 этапа:
1. Сначала производится предварительный расчет распреде ления между L,, l2, Lj путем варьирования величин Ц, L, при условии минимизации Т. На этом этапе выбирается вели
чина |
при минимальном Т. |
|
|
2. |
Затем в |
помещается максимально возможно число са |
|
мых коротких справочников, для этого объем справочников JV, |
|||
упорядочиваются |
по возрастанию. |
анализируется |
|
3. |
После распределения справочников в |
наличие неиспользованной при размещении справочников час ти L*. Неиспользованная часть 1^ добавляется к окну для спра вочников.
Программа, реализующая алгоритм, написана на языке ФОРТРАН для ЭВМ «Минск-32». Настоящая программа пред назначена для использования при решении задач как на ЭВМ «Минск-22», так и на ЭВМ «Минск-32». Исходными данными яв ляются величины L 0 ЗУ, Р — длина документа основного масси ва, N, М, В и S — шаг увеличения окна. На широкую печать программой выводятся LP0R, L0KNA, SPRA V, а также зна чения 1 — Wi для справочников, разместившихся в ОЗУ. Время работы программы 4—18 минут.
Алгоритм проверен при решении задачи «Распределение мо лодых специалистов с помощью ЭВМ».
76
В. В. Дроздов
СИСТЕМА ПРОГРАММ ОБРАБОТКИ МЕДИЦИНСКОЙ ИНФОРМАЦИИ
Учитывая сложность и разнообразие медицинсхой докумен тации, отсутствие по заданной теме готовых программ или све дений о них, в институте своими силами разработана система программ обработки медицинской информации (СПОМИ).
Данный комплекс включает в себя программы записи, кор ректировки, перекомпоновки, сортировки информации, ее мате матической и статистической обработки с выводом результатов
ввиде готовых таблиц на широкую печать.
Всистеме предъявляются следующие требования к документу;
1.Документ может быть произвольным по количеству и структуре входящих в него признаков.
2.Все признаки должны быть закодированными; код призна ка — целое положительное не более семизначного число; код признака не может быть нулевым; коды признаков в документе не должны повторяться.
3.Значения признаков — положительные или отрицательные, целые или действительные, не более девятизначного, числа (вклю чая запятую в дробных числах) текст.
4.Текстовые признаки могут быть зашифрованы по специаль ным кодировочным таблицам и представлены как числовые.
5.По каждому признаку в данном документе допускается только одно из возможных по нему значений.
6.Признаки в документе должны быть распределены опти мальным образом с целью его визуального контроля и удобства перфорации; перфорируемая информация в документе должна
быть четко выделена.
Заполнение документов, предназначенных для обработки на ЭВМ, сначала производится обычным образом.
Перед обработкой информации на ЭВМ по данному докумен ту необходимо вручную составить макет, т. е. структуру представ ления документа на магнитной ленте.
Для каждого составления макета выбирается определенное количество ячеек, в которых для каждого признака отводится определенное количество двоичных разрядов.
По сформированному документу составляется описание ин формации, которое содержит в себе длину макета (число зани маемых им ячеек), затем по каждому признаку его код, не более,
77
чем десятисимвольное имя, относительный номер ячейки с дан ным признаком в макете, количество двоичных разрядов, зани маемых признаком, количество двоичных разрядов справа от него и вид признака.
Стандартное математическое обеспечение ЭВМ «Минск-32» содержит в себе отдельные программы ввода информации с пер фоленты, перекодировки, записи ее на магнитную ленту и т. д., но вследствие их разрозненности, малой эффективности, отсут ствия в них необходимого контроля на различные виды ошибок, неудовлетворение требованиям к информации в СПОМИ была написана специальная программа записи информации на магнит ную ленту ЛАСТО.
Первоначально программа вводит в ЭВМ, формирует и запи сывает отдельным самостоятельным массивом описание инфор мации. Предусмотрена возможность считывания описания ин формации с магнитной ленты или ленты системы, если оно было записано туда ранее.
Впроцессе формирования описания информации оно анали зируется.
Влюбом случае информация о допущенной ошибке выводится на пишущую машинку, а работа программы может быть либо продолжена с целью выявления последующих ошибок, либо на
чата сначала с исправленным описанием информации. Сформированное в памяти ЭВМ описание информации рас
печатывается на широкую печать.
Следующим этапом программа через пишущую машинку настраивается на необходимый режим работы с ошибками в информации.
По решению оператора информация об ошибках может быть распечатана на АЦПУ.
Первым признако при перфорации и в описании информации рекомендуется использовать отличительный признак документа.
По указанию оператора документы с заданным и более коли чеством ошибок на магнитную ленту могут не записываться.
После окончательной настройки программы на определенный режим работы производится ввод, перекодировка, компоновки и запись непосредственно информации позонно на магнитную ленту.
Ввод информации производится порциями с одного или нескольских колец перфоленты.
Перекодировка информации из кода М-2 в код ЭВМ произ водится методом обращения в таблицу соответствия кодов по индексной ячейке. Одновременно с перекодировкой очередного
78
символа производится передача управления в блок его обработки. После завершения записи очередного массива можно либо сразу же вводить и записывать по данному описанию следующий массив, либо перейти к другому описанию информации, либо
выйти из программы.
В СПОМИ возможны самые различные виды корректировки информации.
Сортировка информации производится с помощью програм мы МСОРТ. Для этой программы только составлена головная программа ДСОРТ, с помощью которой через пишущую машин ку производится задание параметров и настройка программы МСОРТ на нужный режим работы.
Специальная программа ДОЗА осуществляет:
—перезапись одного информационного массива с одной маг нитной ленты на другую;
—объединение нескольких массивов в один;
—поиск и выборку в одном или нескольких массивах задан ных документов с записью их отдельным массивом;
—поиск и отсев из одного или нескольких массивов заданных документов с записью оставшихся документов отдельным мас сивом,
Дополнительная программа СЕПАР производит перезапись информационных массивов с изменением структуры документа, количества признаков в макете, его длины, а программа ИСПОШ производит перезапись информационных массивов с исправле нием ошибок в определенных документах или дополнением не достающей информации из другого массива соответствующих документов.
Основной программой статистической обработки информации является ГЕММА. Ее назначение: распределение документов в одном или нескольких массивах по каждому значению в задан ном интервале каждого заданного признака.
Из всех документов в информационных массивах ГЕММА может выбрать и обработать только документы с заданным усло вием.
По определенным признакам возможна группировка значений по заданным интервалам.
За один прогон информации ГЕММА позволяет получить до 300000 результатов по всем значениям всех признаков, что дости гается специальным блоком программы по алгоритму, предло женному в Институте математики СО АН СССР.
Кроме абсолютных значений результатов, ГЕММА подсчиты вает и выводит на печать удельные веса распределений от коли
79