PK GSB

Материал из ПМК вики
(перенаправлено с «AF»)
Перейти к: навигация, поиск
Команда PК ПП
 P   К   ПП  mm
Код команды AF mm
Русская мнемоника PК ПП
Латинская мнемоника PK GSB
Группа команд вызов и возврат из подпрограмм
Число операндов
Нажимаемые клавиши  P   К   ПП , далее две цифры номера регистра
Число шагов 2
Признак перезаписи сбрасывается
Первое появление МК-152
Время выполнения ?
Скорость выполнения ? команд/с

Двухшаговая команда РК ПП mm (лат. PK GSB mm) «Косвенный переход на подпрограмму по содержимому адресных регистров от 0 до 99» с кодом AF вызывает переход на подпрограмму по адресу, записанному в регистре mm (от 0 до 99). Перед выполнением команды содержимое регистра mm модифицируется.

Подпрограммы применяются для замены повторяющихся последовательностей команд в различных местах программы. Команды организации подпрограмм действуют только в режиме выполнения программы.

При переходе на подпрограмму, адрес команды, следующей за командой перехода, запоминается в стеке возвратов. При возврате из подпрограммы, последний записанный адрес из стека возврата переносится в счетчик адреса.

Подпрограмма может быть вызвана из другой подпрограммы. Глубина возможных вложений определяется размером стека возвратов. В ЭВМ возможно использование до 64 уровней вложения подпрограмм.

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

10.РКПП 11.17

Команда РКПП 17 по адресам 10-11 с кодом AF 17 вызывает переход на подпрограмму, адрес который записан в R17. Предварительно содержимое R17 модифицируется, в частности у содержащегося там числа отбрасывается дробная часть.

Допустим, в R17 содержится число 1945,0509. Тогда команда РКПП 17 передаст управление подпрограмме, начинающейся с адреса 1945. Когда подпрограмма завершит своё выполнение с помощью команды В/О, управление вернётся на адрес 12.

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

Недокументированные команды с кодами 4F, 6F до EF в советских ПМК полностью аналогичны командам обращения к регистру 0 c кодами 40, 60-E0 (Д.Б. Хрусталев, В.А. Хмелюк, «Школа начинающего программиста. Занятие 22» // «Наука и Жизнь» №1 - 1989 г. - С.124).

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