ПОИСК Статьи Рисунки Таблицы Автоматизация прочностных расчетов трубопроводов из "Автоматизация проектирования трубопроводных систем химических производств" Общая характеристика. Табличный наглядный язык ТАНЯ предназначен для записи алгоритмов выбора деталей трубопроводов. Язык ТАНЯ имеет замкнутую организацию и состоит из правил заполнения четырех управляющих таблиц. Управляющие таблицы хранятся в информационном фонде и вызываются в оперативную память системой программ АВД для автоматизированного выбора деталей. Система АВД предназначена для интерпретации алгоритмов, содержащихся в управляющих таблицах. [c.23] Пользование языком ТАНЯ доступно проектировщику, не знакомому с программированием для ЭВМ, и позволяет разрабатывать и хранить варианты алгоритмов, отражающие специфику проектирования конкретных объектов. Язык ТАНЯ позволяет создавать по существу работающую модель процесса принятия решений в проектировании. [c.23] Реализация языка ТАНЯ обеспечивает полную автоматизацию программирования таблиц решений, включая вызов таблиц в оперативную память, организацию поиска в таблицах, диагностику остановов при поиске в таблицах, согласование форматов переменных. [c.23] Без изменения программного обеспечения допускается произвольная корректировка алгоритмов, в том числе введение новых переменных, включение в алгоритм новых таблиц, изменение правил работы с таблицами, реализация произвольных арифметических действий. Программная реализация языка ТАНЯ не имеет ограничений, введенных выше при изложении постановки задачи. Так, без изменения программного фонда в алгоритм можно включить классификатор сред, если он будет когда-либо разработан. [c.23] Основное ограничение интерпретирующей системы АВД для языка ТАНЯ состоит в том, что все таблицы решений должны располагаться в оперативной памяти одновременно. На практике это требование удовлетворяется с запасом при объеме оперативной памяти 512 кбайт. Табличная запись алгоритмов позволяет автоматизировать выдачу на печать документации — блок-схем алгоритмов. [c.23] Разработка языка ТАНЯ основана на идеях, близких к направлению в программировании, известному под названием реляционные базы данных [29, 64]. Теоретики этого направления ввели собственную терминологию и называют простые вещи специальными словами [см. 30, с. 204] для понятий таблица, строка, графа, введены термины, отношение, кортеж, домен. В соответствии с принятой терминологией язык ТАНЯ представляет собой таблично-форматированный язык с замкнутой организацией, основанный на реляционной алгебре основной оператор языка — объединение кортежа и отношения. [c.23] С точки зрения учения о таблицах решений [31], система АВД представляет собой интерпретатор таблиц с расширенными входами, построенный на основе метода маски. [c.23] Рабочий массив содержит наименования и значения переменных. Вторая управляющая таблица задает правила поиска в таблицах решений, ее фрагмент приведен в табл. И-8. Первая управляющая таблица задает последовательность действий в алгоритме и порядок условных переходов. Арифметическая таблица служит для записи арифметических операций. [c.24] Принцип сквозного рабочего массива. Все содержательные переменные, участвующие в задаче, входные, выходные, промежуточные, объявлены в программах одинаково, как символьные строки постоянной длины 8 байт. Все они объединены в рабочий массив, единый для всей задачи. Каждая переменная определяется номером в рабочем массиве каждой переменной соответствует название на русском языке длиной в 30 байт. [c.24] Как значения, так и наименования переменных представляют собой графы специальной управляющей таблицы. Память для рабочих переменных отводится при вызове соответствующей графы в оперативную память (см. гл. УИ). [c.24] Фрагмент 1-й управляющей таблицы для задачи выбора труб и фасонных деталей приведен в табл. И-9. Входная и выходная метки служат для передачи управления и разветвления алгоритма. В графе оператор указывается тип действия, которое требуется исполнить. Графа признак таблицы нужна для задания варианта работы с таблицей решений. Графа комментарий не обрабатывается ЭВМ. [c.24] Операторы, задаваемые в 1-й управляющей таблице, относятся к одному из трех типов являются табличными, обеспечивают передачу управления, служат для вызова специальных процедур. [c.24] Алгоритмы принятия решений в значительной степени состоят из поиска ответов в многочисленных таблицах решений. Основной табличный оператор, обозначаемый пробелами в графе оператор 1-й управляющей таблицы, осуществляет поиск по правилам, описанным выше в разделе разработка таблиц решений . Исходные параметры для работы с таблицей вызываются из рабочего массива туда же помещаются результаты поиска. [c.24] Если поиск закончился отрицательно, т. е. не найдена строка, удовлетворяющая всем условиям, происходит переход по выходной метке, или (если метка равна пробелу) вызов процедуры диагностики. Как в 1-й, так и во 2-й управляющих таблицах графы номер таблицы и признак таблицы имеют одинаковый смысл. Значения этих граф используются для связи между 1-й и 2-й управляющими таблицами. Например, при выполнении поиска в табл. И-7 по варианту А интерпретирующая программа по номеру 7 и признаку А находит во 2-й управляющей таблице описание действий с графами. [c.24] Операторы 2-й управляющей таблицы исполняются в порядке их расположения сверху вниз. Перенос результатов производится из строки таблицы, удовлетворяющей одновременно всем условиям, расположенным раньше оператора переноса значений. [c.25] Форматы переменных, участвующих в операциях с графами, согласуются автоматически переменные из рабочего массива преобразуются к виду, соответствующему форматам граф. [c.25] В языке ТАНЯ предусмотрен ряд видоизменений основных правил работы с таблицами решений. [c.25] Операторы 1-й управляющей таблицы исполняются сверху вниз, однако возможна передача управления по меткам. Например, в табл. И-9 оператор безусловного перехода ПЕ осуществляет обход диагностического сообщения по метке У когда поиск в табл. И-7 оказывается неудачным, происходит переход по метке X. Имеется вариант оператора динамической передачи управления значение метки становится известным в процессе выполнения алгоритма. [c.25] В языке ТАНЯ для операций ввода — вывода и ряда вычислительных алгоритмов подготовлены процедуры, вызов которых осуществляется специальными операторами. Так, в табл. И-9 оператор ВВ осуществляет диагностическую печать число, стоящее в графе номер таблицы для данного оператора, задает вариант алгоритма. В состав вычислительных процедур входят расчет условного давления по ГОСТ 356—80, прочностные расчеты по ГОСТ 14249—80 и ГОСТ 24755—81. Процедуры ввода — вывода осуществляют ввод перфокарт из входного потока и размещение переменных в рабочем массиве, а также оформление перфокарт на выходе в нужном формате. [c.25] Обобщение понятия таблицы. Автоматизация программирования операций с таблицами решений оказывает существенное влияние на постановку задачи выгодно представить в виде поиска в таблицах как можно большую часть алгоритмов. Отсюда возникают расширения понятия таблицы. Таблица-константа состоит только из 1-й строки и служит для хранения числовых и символьных констант. Поиск в такой таблице заменяет собой условный оператор с проверкой произвольных условий. [c.25] Вернуться к основной статье