в одной из следующих двух
Для организации циклов с целочисленной переменной — счетчиком цикла — используются слова
DO A,B ---> (исполнение) LOOP ---> (исполнение) +LOOP A ---> (исполнение) I ---> A (исполнение) J ---> A (исполнение) LEAVE ---> (исполнение)
Такие циклы записываются в одной из следующих двух форм:
DO <тело>
LOOP или
DO <тело>
+LOOP. В обоих случаях цикл начинается словом
DO (делать), которое снимает со стека два значения: начальное (на вершине стека) и конечное (второе сверху) — и запоминает их. Текущее значение счетчика полагается равным начальному значению, после чего исполняются слова, составляющие тело цикла. Слово
LOOP увеличивает текущее значение счетчика на единицу и проверяет условие завершения цикла. В отличие от него, слово
+LOOP прибавляет к текущему значению счетчика значение шага, которое вычисляется на стеке телом цикла и рассматривается как число со знаком. В обоих случаях условием завершения цикла является пересечение границы между A–1 и A при переходе от прежнего значения счетчика к новому (направление перехода определяется знаком шага), где A — конечное значение, снятое со стека словом
DO.
Если пересечения не произошло, то тело цикла исполняется вновь с новым значением счетчика в качестве текущего.
Такое определение позволяет рассматривать исходные параметры цикла (начальное и конечное значения) и как числа со знаком, и как числа без знака (адреса). Например, текст
10 0 DO <тело>
LOOP предписывает выполнять тело цикла 10 раз со значениями счетчика 0, 1, 2, ..., 9, а в случае
0 10 DO <тело>
LOOP тело цикла будет исполнено 65 526 раз со значением счетчика 10, 11, ..., 32767, -32768, -32767, .... -1 или (что то же самое) со значениями счетчика 10, 11, ..., 65535. В то же время цикл
0 10 DO <тело>
-1 +LOOP будет исполняться 11 раз (а не 10) со значениями счетчика 10, 9, ..., 0, поскольку пересечение границы между -1 и 0 произойдет при переходе от значения счетчика 0 к следующему значению — -1.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий