|
В этих условиях вычисления Р (I) описываются командами вида адреса которых линейно зависят от текущего значения параметра цикла i (разумеется, при bs = О адрес А5 фактически не зависит от i, такой адрес соответствует константе или переменной из X). Если все эти условия соблюдаются, то схема программы (алгоритм) простого структурного цикла имеет следующий вид. L. Алгоритм выполнения простого структурного цикла с параметром i, пробегающим значения 1, 2, п. L1. а) Присвоить начальные значения переменным из совокупности X (в частности, i := 0). б) Сформировать переменные команды для значения параметра i == 0. L2. а) Переадресовать переменные команды для перехода к очередному значению i, на 1 большему предыдущего. б) Выполнить вычисления Р (I) (в том числе присваивание L3. Если i пу то перейти на L2. Шаг L1 образует подготовительную часть цикла, его подшаг L16 принято называть формированием переменных команд. Подшаг L2a называется переадресацией, а подшаг L26 (иначе говоря, совокупность вычислений Р (i)) — рабочей частью цикла. Наконец, шаг L3 можно назвать проверкой на окончание работы цикла или на выход из цикла. Составление программы структурного цикла должно начинаться с программирования его рабочей части Р (7), так как написать команды формирования и переадресации переменных команд можно только после того, как число и вид этих команд станут известны. В ходе программирования шагов L16, L2a и L3 выявляется число и вид констант (заготовок), необходимых для формирования, переадресации и проверки на выход из цикла. Эти шаги могут быть запрограммированы по следующим формальным правилам" Переадресация. Для каждой переменной команды (3) подшаг L2a должен содержать команду переадресации вида где р — адрес ячейки, в которой размещается переменная команда, а га — адрес ячейки, где хранится константа переадресации 0 0 bL Ь2 b3. Формирование для i = 0. Для каждой переменной команды (3) подшаг L1.6 должен содержать команду формирования вида 0 ПЧ гф 0 р, где р — по-прежнему адрес переменкой команды, а гф — адрес ячейки, в которой помещается константа формирования 0 КОП аг а2 а3. Проверка н а выход при i = п. Выбирается одна из переменных команд (3) и блок L3 реализуется в виде двух команд.
|