Слово ИП

Материал из ПМК вики
Версия от 06:44, 9 ноября 2017; AtH (обсуждение | вклад)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

ИП (регистр извлечь, из памяти, читается «ип») — системное слово Каллисто. Прямое чтение из памяти данных.

ИП             ( u -- x )                      Из памяти. Чтение регистра с номером u.
Пример работы слова ИП

Чтение регистра ЭКВМ с номером u (u от 0 до 9999) с последующим сохранением стека ЭКВМ в переменных RX, RY, RZ и RT. Содержимое регистра u, взятое из RX, кладётся на стек.

Ввод слова ИП[править]

В режиме РУС последовательно нажмите две клавиши  В/О   8 

Замечание[править]

Слово ИП — наиболее удобный и совместимый способ считать содержимое регистра функций МК-161 (u от 9000 до 9999). Некоторые регистры функций возвращают сразу несколько значений. Этим вызвана необходимость полного сохранения стека ЭКВМ в переменных RX, RY, RZ и RT.

Также слово ИП важно для совместимости с Каллисто 2.0, в которой предполагается отказ от единой адресации. При использовании рекомендуемых переменных VALUE необходимость в использовании ИП и @ возникает редко.

Реализация[править]

В Каллисто 1.0 слово ИП сохраняет содержимое стека в переменных RX, RY, RZ и RT:

 817 ;#ipe
 818 ; ИП               ( U −− x )                           Прочесть регистр МК−161 с номером U.
 819 ; Прочитать регистр МК−161 RU и сохранить стек МК−161 в переменные RX RY RZ RT
 820 ; Не осуществлять преобразование адресов, полностью "сырое" обращение к регистру.
 821 LIP:            .DB     2,136,143               ; "ИП"
 822                 .DW     LRSTO                   ; ( номер −− содержимое )
 823 IP:             .DW     JIP
 824 JIP:            CX ENT ENT
 825                 PKRM03 MA CX KRMA
 826                 PKM03
 827                 PM rRX FR  PM rRY FR  PM rRZ <−>  PM rRT
 828                 KGOTO9

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


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.