Слово R0

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

R0 (читается «ар-нуль») — фортовская переменная Каллисто.

R0             ( −− a )                             Переменная, адрес дна стека возвратов.

Переменная R0 содержит адрес дна стека возвратов.

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

В режиме ЛАТ последовательно нажмите три клавиши  ×     P   0 

Маленькие хитрости[править]

R5095 и R5094 традиционно заняты под номер блока, хранящегося в буфере. Но байтовые регистры непосредственно под R5094 могут быть зарезервированы программистом под свои нужды с помощью переменной R0. Не забудьте только переинциализировать RP.

Для резервирования нужного числа байтовых регистров с заранее неизвестными номерами проще использовать стандартное слово ALLOT.

R0 в fig-FORTH Release 1 glossary, май 1979 (англ.)[править]

 R0             ---  addr                          U
        A user variable containing the initial location of the return stack.
        Pronounced R-zero. See RP!

 The return stack grows downward from the user area toward the terminal
 buffer. Forty-eight bytes are sufficient. The origin is in R0 (R-zero) and
 is loaded from a boot-up literal.

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

 139 rrR0            .EQU     1133                   ; 11133  R0 − Указатель начала стека возвратов
 140 rlR0            .EQU     1134
 141 pR0             .EQU      133
…
2758 ;#RZero
2759 ; R0               ( −− a )                             Переменная, адрес дна стека возвратов.
2760 LRZERO:         .DB     2
2761                 .TEXT   "R0"
2762                 .DW     LSZERO
2763 RZERO:          .DW     SUSE
2764                 .DB pR0

Реализация из SP-Forth 4.20:

USER R0   \ адрес дна стека возвратов

Советская реализация[править]

Описание и определение переменной R0 в ядре ФОРТ-ЕС:

R0       *C  ->А ПЕРЕМЕННАЯ - АДРЕС ДНА СТЕКА ВОЗВРАТОВ          7

                      Экран номер 7
( 09.09.86 КОНСТАНТЫ И СИСТЕМНЫЕ ПЕРЕМЕННЫЕ      )

VARIABLE  R0                ( АДРЕС ДНА СТЕКА ВОЗВРАТОВ)

Определение переменной R0 в FORTH ИТЭФ:

   XTIB    DW  92 DUP(0)               ; Входной буфер
   XR0     DW  0,0                     ; Стек возвратов
   XUP     DW  102 DUP(0)              ; USER-область
            ...
            HEAD     202Q,'R',260Q,RZERO,$USE             ; R0
            DW 8

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


  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


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