Слово R0

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Версия для печати больше не поддерживается и может содержать ошибки обработки. Обновите закладки браузера и используйте вместо этого функцию печати браузера по умолчанию.

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

Ссылки


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


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