Файл: Общее математическое обеспечение для решения задач экономики, статистики и управления на ЭВМ Минск-32 тезисы докладов и сообщений..pdf

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

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

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

Добавлен: 23.10.2024

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

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

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

Трансляция программ на ЭВМ «Минск-32» всегда связана

свыполнением нескольких обслуживающих программ. Работа программ занимает значительную часть общего времени. Напри­ мер, перед трансляцией программы с перфокарты записываются на МЛ или производится их корректировка на МЛ. После тран­ сляции почти всегда необходимо произвести сборку и выполнить полученную программу. Для каждой обслуживающей программы

спомощью заказа необходимо указывать соответствующую на­ страивающую информацию.

Вдокладе предлагается аналог каталогизированной процедуры для трансляции* программ на ЭВМ «Минск-32». Вместо процедуры разрабатывается управляющая программа (УП), которая орга­ низует ввод заказа и выполнение программ в соответствии с ним. УП может выполнять несколько зафиксированных процедур; выбор необходимой осуществляется заказом. Заказ служит также для доопределения расположения программ, их названий и т. д. Фактически заказ выполняет самые простые и типичные функции языка управления заданиями.

Такой способ использовался при составлении управляющего блока транслятора СМОД и специальной управляющей програм­ мы ТРАНС для трансляции символических программ (СИМП).

Программы ввода перфокарт, корректор и программы пере­ записи массивов на МЛ составлены заново и отличаются от су­ ществующих в СМО «Минск-32» следующим:

А. Ввод программ с перфокарт осуществляется в режим «массив».

Б. Введен иной метод корректировки программ на МЛ с помощью корректирующих перфокарт. Перфокарты для вставки

изамены оператора языка символического кодирования оформля­ ются по правилам перфорации СИМП. Для удаления оператора подготавливается перфокарта, на которой после идентификатора (5 символов) и номера следования (6 символов) ставится сим­ вол t. Все корректирующие перфокарты складываются вместе,

иоформляется массив на перфокартах с названием, одинаковым

сназванием программы. Такие корректирующие перфокарты могут без изменений подкладываться к перфокартам самой программы перед конечным блоком; при вводе такой программы

сперфокарты будет производиться корректировка массива перфо­ карты. Этот способ можно использовать также для исправления программ на перфокарте.

Предлагаемая УП ТРАНС имеет следующие преимущества;

1.Облегчает работу оператора ЭВМ.

11


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

Под управлением ТРАНС имеется возможность произвести все подготовительные действия по запуску ТРАНС, а далее ЭВМ работает достаточно длительное время без вмешательства опе­ ратора. Это позволяет оператору:

внимательнее следить за работой внешних устройств;

обслуживать одновременно другое задание;

четко определять свободные внешние устройства для дру­ гих заданий, так как закрепление внешних устройств осущест­ вляется УП после ввода заказа и не меняется до конца работы ТРАНС;

2.После ввода заказа ТРАНС освобождает для ввода пред­ назначенное внешнее устройство (если оно це нужно для других целей) и предоставляет это внешнее устройство другим заданиям;

3.Сокращает время получения РП за счет:

а) сокращения:

числа управляющих карт;

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

времени подготовки МЛ, так как это производится лишь по запуску ТРАНС;

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

М. В. Витиныи

СИСТЕМА ПРОГРАММИРОВАНИЯ ЗАДАЧ ОБРАБОТКИ ДАННЫХ МАКРОКОМАНДАМИ (СМОД) И СРЕДСТВАМИ ЯСК

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

12

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

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

Средствами описания обработки информации являются опе­ раторы восьми групп:

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

Операторы описания массива задают сведения о размещении массива на внешних носителях информации и о внутренней струк­ туре массива;

2. Операторы ввода — вывода (открыть, закрыть массив, ввести — вывести запись) используются при обмене информа­ цией между оперативной памятью ЭВМ и внешними запоминаю­ щими устройствами. Выполнение этих операторов реализовано путем обращения к программам системы управления вводом — выводом (СУВВ), СУВВ транслятора совместима с системой обмена информации с внешними устройствами СМО «Минск-32», т. е. массивы, созданные этой системой, впоследствии могут обрабатываться СМОД-программами, и наоборот;

3. Операторы пересылки — перекодирования предназначены для:

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

пересылки реквизитов;

перекодирования реквизитов;

4.Арифметические операторы;

5.Операторы передачи управления;

6.Операторы связи с пультом ЭВМ;

7.Вспомогательные операторы;

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

В1974 году система СМОД была расширена путем включения

внее языка символического кодирования (ЯСК). Это может понадобиться при составлении настраивающихся программ, при формировании и передаче сложных параметров программам, при изменении значений ячеек уровня, при работе с отдельными би­ тами, а также в других случаях. Объединение в единую систему СМОД и ЯСК дает возможность программисту самому выбирать

13


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

При совместном использовании СМОД и ЯСК в программе разрешается употреблять все операторы СМОД и ЯСК (исклю­ чение составляет лишь оператор НАЧ). Порядок их следования в программе формально никак не регламентируется. Разрешается взаимно передавать управление между операторами СМОД и ЯСК. Операторы ЯСК специальными признаками не снабжаются; транслятор их распознает по формату и коду оператора. Весьма важно и удачно то, что информационные связи между операто­ рами СМОД и ЯСК организует транслятор.

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

Обработка других объектов СМОД-массивов и таблиц опе­ раторами ЯСК невозможна (в качестве операторов ЯСК нельзя употреблять названия массивов и таблиц). Это обусловлено тем, что система управления вводом — выводом (СУВВ) достаточно сложна, и вмешиваться в ее работу практически невозможно. Название таблицы нельзя заменять на относительный адрес на­ чала таблицы потому, что его значение может превышать макси­ мально допустимое — 2047.

При формировании результирующей программы распреде­ ления памяти производится транслятором, поэтому использовать явную адресацию в операторах ЯСК не рекомендуется. Если же она все-таки используется, а также при использовании более сложных элементов ЯСК (операторы обмена с внешними устрой­ ствами, изменения ячеек уровня, специального базирования), программист отвечает за правильную установку базисов, орга­ низацию переходов из одной области в другую. На практике

14


обычно используются более простые средства ЯСК; в этих слу­ чаях ограничения на использование ЯСК несущественны, и пра­ вильность структуры результирующей программы гарантирует транслятор.

При совместном использовании операторов СМОД и ЯСК

воператорах ЯСК в качестве операндов разрешается употреблять:

операнды, определяемые средствами ЯСК;

адреса реквизитов.

Первые из них транслятором СМОД не обрабатываются, а используются для обработки величин, определяемых на ЯСК.

Ограничения на совместное использование операторов ЯСК

иСМОД:

если программе передаются параметры, то выход из нее следует организовать оператором ЯСК ВЫХ;

если в программе несколько операторов ЯСК ВЫХ, то количество параметров при выходе из программы определяется последним из них. Количествопараметров в операторе ВЫХ не разрешается задавать абсолютной этикеткой;

в операторах БАЗ не разрешается использовать абсолютные этикетки;

в операторах ЯСК не рекомендуется использовать одно­ символьные этикетки;

номера базисов в операторах БАЗ должны следовать в неубывающем порядке;

при организации выхода из программы операторами ЯСК об установке значений базиса индексов программист должен заботиться сам. При выходе из программы оператором СМОД значение базиса индексов уменьшается на 16;

программисту разрешается использовать в операторах ЯСК все индексные ячейки, но значения ячеек 1—9 при выпол­ нении операторов СМОД могут быть изменены;

константы, рабочие ячейки, описания программ, массивов обязательно должны размещаться в области, закрепленной за первым или вторым базисом, после оператора ВАЗ 1.

Я. В. Шкут

ТАМ-32 И БИБЛИОТЕКА ПРОГРАММ

ТАМ-32 — транслятор с АЛГАМСа для ЭВМ «Минск-32». ТАМ-32 учитывает индивидуальные особенности транслируемых

15

программ и обеспечивает за счет этого достаточно высокое ка­ чество рабочих программ. АЛГАМС и ТАМ-32 обеспечивают использование в транслированных программах библиотечных программ (БП). Кроме того, ТАМ-32 транслирует АЛГАМСпрограммы в библиотечные программы, а также дает возможность транслировать отдельные процедуры в БП. Таким образом, ТАМ-32 не только обеспечивает использование БП, но и позво­ ляет пополнять библиотеку за счет транслированных программ и отдельных процедур.

Обращение и БП в программе на АЛГАМСе имеет вид обыч­ ного оператора процедуры (указателя функции). Телом описания такой процедуры является LIBRARY (строка).

Требуется, чтобы класс и тип фактических параметров таких операторов процедур (указателей функции) совпадал с классом и типом соответствующих формальных параметров. Если факти­ ческим параметром является идентификатор процедуры, то в описании этой процедуры телом должно быть LIBRARY (строка). В случае фактического параметра — идентификатора массива нижние границы граничных пар описания массива должны при­ нимать значение 0.

С. И. Балацкова-Подольскова, И. М. Булко, В. И. Цагельский

СИСТЕМА ФОРТРАН ДЛЯ ЭВМ «МИНСК-32»

Система ФОРТРАН предназначена для решения широкого круга инженерных и научно-технических задач и состоит из следую­ щих основных частей: входного языка, транслятора, библиотеки программ, а также документации по описанию системы. Входной язык системы в основном близок стандарту языка ФОРТРАН, который обычно называют ФОРТРАН-IV.

Транслятор с языка ФОРТРАН является частью системы программирования машины «Минск-32». Транслятор разработан в соответствии с принципами системы программирования и удовлетворяет всем ее требованиям. Перевод исходной ФОРТ- РАН-программы в результирующую программу на языке загруз­ ки выполняется транслятором за два просмотра исходного текста.

На первом просмотре осуществляется перевод ФОРТРАНпрограммы во внутренний вид, строятся словари, характеризую­ щие объекты ФОРТРАН-программы. На этом же просмотре производится синтаксический контроль ФОРТРАН-программы.

*6


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

Транслятор настраивается на работу в зависимости от выде­ ленного объема оперативной памяти. Программы первого и второго просмотров либо поочередно загружаются на одно и то же место памяти, либо находятся в МОЗУ постоянно.

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

Вбиблиотеке программ системы можно различать три уровня:

1)программы, обслуживающие систему программирования (ввода — вывода исходных текстов, КОРРЕКТОР, СБОРЩИК, отладочные программы);

2)программы, обслуживающие возможности входного языка

(вычисления основных внешних функций; организующие ввод — сывод данных в ФОРТРАН-программах; интерпретирующие — для выполнения операций над числами удвоенной длины и ком­ плексными числами);

3) произвольные программы, используемые при составлении ФОРТРАН-программ.

И. А. Кучеренко, Н. Г. Пчелина

СТАНДАРТЫ В АЛГОРИТМИЗАЦИИ

В реализации задач на ЭВМ главным процессом является алгоритмизация — связующее звено между постановкой задачи и ее программированием.

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

Основные моменты работы алгоритмиста:

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

определение критерия оптимальности, если он существует,

и ограничений, накладываемых на решение задачи;

— разработка форматов входной, выходной и

поомежуточ-

ной информации;

 

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

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

разработка словаря нестандартных терминов и необходи­ мых сокращений;

подготовка общих текстовых данных для отладки прог­ раммы;

всесторонняя помощь программисту.

В своей работе алгоритмист должен руководствоваться рядом стандартов, наиболее важными из которых являются:

— «Оформление

алгоритма»;

— «Организация

массивов на машинных носителях»;

— «Обоснование

выбора систем программирования»;

— «Контрольный

пример».

В стандарт «Оформление алгоритма» входят следующие раз­ делы:

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

еерешения;

принципы детализации блок-схем:

правила их описания и вычерчивания;

способы представления перечня изменяемых величин;

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

Стандарт «Организация массивов на машинных носителях» учитывает:

рациональную систему кодирования данных;

минимизацию объема избыточной информации;

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

минимизацию времени поиска;

удобство внесения изменений.

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

Стандарт «Обоснование выбора систем программирования» включает разделы:

— основные параметры действующих систем программиро­ вания;

18