Ryzhij писал(а):Никита писал(а): А если не сильно вникать в подробности, то на SFC его явно не разглядеть, там сама суть языка - даже не переходы, а зацикливание вызываемых подпрограмм с выходом по условию. А то и однократный CALL и дальше NOP с условным прыжком.
Коллега, ИМХО Вы несколько неудачно использовали слово "зацикливание".
Ничего подобного там не происходит.
Там, после выполнения условий перехода автомата из одного состояния в другое, происходит смена исполняемых задач ("вызываемых подпрограмм" в Вашей терминологии). Но без всякого "зацикливания". Просто неисполняемые в настоящее время участки кода обходятся.
Вячеслав, у меня мысли уже немного в других категориях витают. Я со стороны процессора смотрю. Да, ненужные участки могут обходиться (опять же, в конце концов, инструкциями условного перехода). Но системные задачи продолжают исполняться, а проверка условия перехода на следующий шаг продолжает выполняться. Нарисуйте по-русски эту схему, хотя бы на школьном уровне, пренебрегая прерываниями и наличием других задач - если условие, то - следующий шаг, иначе - [необязательный код] и возврат к проверке условия.
Вопрос то на в терминологии, а в том, что для того чтобы не повесить контроллер надо анализировать весь комплекс от алгоритмов до машинных инструкций. Впрочем, ситуация с нашей ПС-5 показывает что при желании и "таланте" можно зациклить и "дубовую железную" схему АПВ