Автоматизированные системы управления атомных электростанций 2
![]()
|
Понятие и основные сведения об алгоритме. Способы записи алгоритмов.При построении систем комплексной автоматизации, особенно систем, включающих цифровые управляющие машины, все больше выявляется недостаточность дифференциальных, разностных и интегральных уравнений как математического аппарата описания процессов управления. Обусловлено это большим количеством логических условий, встречающихся в подобных процессах управления, а также дискретностью многих действий. Необходим более общий способ описания процессов управления. Таким способом может служить алгоритм. Термин алгоритм происходит от имени средневекового узбекского математика Аль-Хорезми, который еще в IX в. (825 г.) дал правила выполнения четырех арифметических действий в десятичной системе счисления. Процесс выполнения арифметических действий был назван алгоризмом. Алгоритм есть совокупность четко определенных правил, процедур или команд, обеспечивающих решение поставленной задачи за конечное число шагов. Под алгоритмом управления понимают совокупность правил приложения управляющих воздействий к исполнительным элементам объекта управления, обеспечивающих его функционирование с целью решения поставленной перед объектом задачи. Вырабатывает указанные воздействия управляющее устройство на основе уставок и ограничений, введенных оператором (априорная информация), и сигналов датчиков, вводимых обратными связями (текущая информация). В этом смысле алгоритм управления определяет закон функционирования управляющего устройства. Алгоритм — понятие весьма широкое; оно охватывает любую совокупность преобразований и логических условий, действующих в определенном порядке. Например, алгоритмом можно назвать любую инструкцию или предписание, определяющие порядок действия лица в конкретных условиях. Любая передаточная функция системы управленияесть частный вид алгоритма. Используются следующие способы записи алгоритмов: • словесный; • формульный; • табличный; • операторный; • графический; • язык программирования. При словесном способе записи содержание последовательных этапов алгоритма описывается в произвольной форме на естественном языке. Формульный способ основан на строго формализованном аналитическом задании необходимых для исполнения действий. Табличный способ подразумевает отображение алгоритма в виде таблиц, использующих аппарат реляционного исчисления и алгебру логики для задания подлежащих исполнению взаимных связей между данными, содержащимися в таблице. Операторный способ базируется на использовании для отображения алгоритма условного набора специальных операторов: арифметических, логических, печати, ввода данных и т, д.; операторы снабжаются индексами и между ними указываются необходимые переходы, а сами индексированные операторы описываются чаще всего в табличной форме. Графическое отображение алгоритмов в виде блок-схем — весьма наглядный и распространенный способ. Графические символы, отображающие выполняемые процедуры, стандартизованы. Наряду с основными символами используются и вспомогательные, поясняющие процедуры и связи между ними. Алгоритмы могут быть записаны и в виде команд какого-либо языка программирования. Если это макрокоманды, то алгоритм читаем и пользователем-программистом, и вычислительной машиной, имеющей транслятор с соответствующего языка.
Схема алгоритма — графическое представление алгоритма, дополняемое элементами словесной записи. Каждый пункт алгоритма отображается на схеме некоторой геометрической фигурой или блоком. При этом правило выполнения схем алгоритмов регламентирует ГОСТ 19.002—80 «Единая система программной документации» (табл. 1.21). Блоки на схемах соединяются линиями потоков информации. Основное направление потока информации идет сверху вниз и слева направо (стрелки могут не указываться), снизу вверх и справа налево — стрелка обязательна. Количество входящих линий для блока не ограничено. Выходящая линия — одна, за исключением логического блока. К основным структурам относятся следующие — линейные, разветвляющиеся, циклические (рис. 1.21). ![]() Рис. 1.21. Примеры структур алгоритмов: a— линейный алгоритм; б — алгоритм с ветвлением; в — алгоритм с циклом Линейными называются алгоритмы, в которых действия осуществляются последовательно друг за другом. Стандартная блок-схема линейного алгоритма приводится на рис. 1.21, а (вычисление суммы двух чисел — А и В). Разветвляющимся называется алгоритм, который, в отличие от линейных алгоритмов, содержит условие, в зависимости от истинности или ложности которого выполняется та или иная последовательность команд. Таким образом, команда ветвления состоит из условия и двух последовательностей команд. Примером может являться разветвляющийся алгоритм, изображенный в виде блок-схемы (рис. 1.21, б). Аргументами этого алгоритма являются две переменныеА, В, а результатом — переменная X. Если условие А > В истинно, то выполняется операция X := А хВ, в противном случае выполняется Х.= А + В. В результате печатается то значение переменной X, которое она получает при выполнении одной из серий команд. Циклическим называется алгоритм, в котором некоторая последовательность операций (тело цикла) выполняется многократно. Однако «многократно» не означает «до бесконечности». Организация циклов, никогда не приводящая к остановке в выполнении алгоритма, является нарушением требования его результативности — получения результата за конечное число шагов. В цикл в качестве базовых входят — блок проверки условия и тело цикла. Перед операцией цикла осуществляется начальное присвоение значений тем переменным, которые используются в теле цикла. Рассмотрим пример алгоритма вычисления факториала, изображенный на рис. 1.21 (с циклом «ПОКА»). Переменная N получает значение числа, факториал которого вычисляется. Переменной N1, которая в результате выполнения алгоритма должна получить значение факториала, присваивается первоначальное значение 1. ПеременнойКтакже присваивается значение 1. Цикл будет выполняться, пока справедливо условие N > К. |