PF L0: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
 
(не показаны 3 промежуточные версии 3 участников)
Строка 1: Строка 1:
Команда '''PF L0''' NNNN «Организация цикла с регистром 0» с кодом FD вызывает переход на адрес NNNN от 0 до 9999, если значение в [[R0|регистре памяти 0]] больше единицы.
Команда {{Синяя клавиша|P}}{{Оранжевая команда 2|F|L0}} '''NNNN''' «Организация цикла с регистром 0» с кодом FD вызывает переход на адрес NNNN от 0 до 9999, если значение в [[R0|регистре памяти 0]] больше единицы.


Переход по записанному в команде адресу происходит, если значение в [[R0]] больше единицы. В таком случае содержимое [[R0]] декрементируется - из него вычитается единица. Если значение меньше или равно единице, то выполняется команда программы, следующая непосредственно за командой организации цикла.
Переход по записанному в команде адресу происходит, если значение в [[R0]] больше единицы. В таком случае содержимое [[R0]] декрементируется - из него вычитается единица. Если значение меньше или равно единице, то выполняется команда программы, следующая непосредственно за командой организации цикла.
Строка 6: Строка 6:


== Пример ==
== Пример ==
{{Индикатор F ПРГ|
  2010 FD PF L0 1917
  2010 FD PF L0 1917
  2011 19
  2011 19
  2012 17
  2012 17
 
}}
Команда PFL0 1917 по адресам 2010-2012 с кодом FD 19 17 уменьшает на единицу содержимое [[R0]] (если [[R0]] больше 1) и осуществляет переход на адрес 1917.  Если же в [[R0]] была единица, программа продолжит выполняться с адреса 2013.
Команда PFL0 1917 по адресам 2010-2012 с кодом FD 19 17 уменьшает на единицу содержимое [[R0]] (если [[R0]] больше 1) и осуществляет переход на адрес 1917.  Если же в [[R0]] была единица, программа продолжит выполняться с адреса 2013.


Строка 16: Строка 17:


== Ссылки ==
== Ссылки ==
* [http://mk.semico.ru/mk_d11.htm#p13 Команда PFL0 на сайте НПП «СЕМИКО», п. 13.3]
{{Документация|mk_d11.htm#p13|Команда PFL0 на сайте НПП «СЕМИКО», п. 13.3}}
* См. также команды [[FL0]], [[PFL1]], [[PFL2]] и [[PFL3]]
* См. также команды [[FL0]], [[PFL1]], [[PFL2]] и [[PFL3]]
{{Команды организации циклов}}
{{Команды организации циклов}}

Текущая версия от 15:57, 3 октября 2015

Команда  P  F   L0  NNNN «Организация цикла с регистром 0» с кодом FD вызывает переход на адрес NNNN от 0 до 9999, если значение в регистре памяти 0 больше единицы.

Переход по записанному в команде адресу происходит, если значение в R0 больше единицы. В таком случае содержимое R0 декрементируется - из него вычитается единица. Если значение меньше или равно единице, то выполняется команда программы, следующая непосредственно за командой организации цикла.

Команда организации циклов действует только в режиме выполнения программы. При организации цикла с переходом в сторону уменьшения адреса, количество проходов по циклу будет совпадать со значением числа, изначально записанного в R0. После выхода из цикла в регистре 0 остаётся число один.

Пример[править]

 2010 FD PF L0 1917
 2011 19
 2012 17

Команда PFL0 1917 по адресам 2010-2012 с кодом FD 19 17 уменьшает на единицу содержимое R0 (если R0 больше 1) и осуществляет переход на адрес 1917. Если же в R0 была единица, программа продолжит выполняться с адреса 2013.

История[править]

В советских ПМК недокументированные команды с кодами от F0 до FF аналогичны К НОП.

Ссылки[править]

Команды организации циклов
FL0 FL1 FL2 FL3
PFL0 PFL1 PFL2 PFL3