Слово R0: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Строка 43: Строка 43:


== Ссылки ==
== Ссылки ==
* {{Исходник|R0|R0}}
* {{Исходник|RZero|R0}}
* См. слова [[!RP]] и [[RP@]]
* См. слова [[!RP]] и [[RP@]]



Версия от 05:31, 15 ноября 2016

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.

Реализация

Описание и определение переменной 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

Ссылки


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


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