CURRENT: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) |
||
(не показана 21 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
'''CURRENT''' (текущий) — | '''CURRENT''' (текущий) — фортовская переменная [[Каллисто]]. | ||
CURRENT ( −− a ) Переменная, текущий пополняемый набор слов. | |||
Переменная указывает [[VOCABULARY|набор слов]], в который добавляются определения новых слов. | |||
К переменной CURRENT редко обращаются по имени. Обычно её значение меняют с помощью слова [[DEFINITIONS]]. | |||
== Ввод слова CURRENT == | |||
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша С/П|{{Чёрная клавиша|С/П}}]] [[Клавиша 3|{{Серая клавиша|3}}]] [[Клавиша ×|{{Серая клавиша|×}}]] [[Клавиша ×|{{Серая клавиша|×}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] [[Клавиша 4|{{Серая клавиша|4}}]] [[Клавиша 2|{{Серая клавиша|2}}]] | |||
== CURRENT в предыдущем стандарте Forth-83 (англ.) == | == GET-CURRENT и SET-CURRENT в стандарте ANS Forth == | ||
<PRE> | |||
16.6.1.1643 GET-CURRENT SEARCH | |||
( -- wid ) | |||
Возвращает wid, идентификатор списка слов компиляции. | |||
16.6.1.2195 SET-CURRENT SEARCH | |||
( wid -- ) | |||
Устанавливает список слов компиляции на список слов, | |||
идентифицированный wid. | |||
</PRE> | |||
== История == | |||
Слово из стандарта Forth 83. Было исключено из стандарта ANS Forth в пользу механизма ALSO/ONLY. | |||
=== CURRENT в предыдущем стандарте Forth-83 (англ.) === | |||
CURRENT -- addr U,79 | CURRENT -- addr U,79 | ||
The address of a variable specifying the vocabulary in which | The address of a variable specifying the vocabulary in which | ||
new word definitions are appended. | new word definitions are appended. | ||
=== CURRENT в стандарте Forth-79 (англ.) === | |||
== CURRENT в стандарте Forth-79 (англ.) == | |||
CURRENT -- addr U,137 | CURRENT -- addr U,137 | ||
Leave the address of a variable specifying the vocabulary into | Leave the address of a variable specifying the vocabulary into | ||
which new word definitions are to be entered. | which new word definitions are to be entered. | ||
== | == Реализация == | ||
<pre> | |||
93 rrCURRENT .EQU 1106 ; 11106 CURRENT − Указатель, к какому словарю будет отнесено новое слово | |||
94 pCURRENT .EQU 106 | |||
95 rlCURRENT .EQU 1107 | |||
… | |||
2849 ;#CURRENT | |||
2850 ; CURRENT ( −− a ) Переменная, текущий пополняемый список слов. | |||
2851 LCURRENT: .DB 7 | |||
2852 .TEXT "CURRENT" | |||
2853 .DW LCONTEXT | |||
2854 CURR: .DW SUSE | |||
2855 .DB pCURRENT ; Переменная указывает список слов, в который вводятся определения новых слов. | |||
</pre> | |||
Реализация из SP-Forth 4.20: | |||
<pre> | |||
USER CURRENT \ дает wid текущего словаря компиляции | |||
… | |||
: SET-CURRENT ( wid -- ) \ 94 SEARCH | |||
\ Установить список компиляции на список, идентифицируемый wid. | |||
CURRENT ! | |||
; | |||
: GET-CURRENT ( -- wid ) \ 94 SEARCH | |||
\ Возвращает wid - идентификатор списка компиляции. | |||
CURRENT @ | |||
; | |||
</pre> | |||
== | === Советская реализация === | ||
Описание и определение переменной CURRENT в ядре ФОРТ-ЕС: | |||
<PRE> | |||
CURRENT П->А ПЕРЕМЕННАЯ - СПИСОК ДЛЯ ДОБАВЛЕНИЯ СЛОВ 7 | |||
Экран номер 7 | |||
( 09.09.86 КОНСТАНТЫ И СИСТЕМНЫЕ ПЕРЕМЕННЫЕ ) | |||
VARIABLE CURRENT ( ТЕКУЩИЙ СПИСОК - КУДА ДОБАВЛЯЕМ) | |||
</PRE> | |||
Определение переменной CURRENT в FORTH ИТЭФ: | |||
<PRE> | |||
HEAD 207Q, 'CURREN',324Q,CURR,$USE ; CURRENT | |||
DW 52Q | |||
</PRE> | |||
== Ссылки == | == Ссылки == | ||
* [http://forth.sourceforge.net/standard/dpans/dpans16.htm#16.6.1.1643 | * {{Исходник|CURRENT|CURRENT}} | ||
* Слова [http://forth.sourceforge.net/standard/dpans/dpans16.htm#16.6.1.1643 GET-CURRENT] и [http://forth.sourceforge.net/standard/dpans/dpans16.htm#16.6.1.2195 SET-CURRENT] в стандарте ANS Forth ''(англ.)'' | |||
* [http:// | * Слова [http://forth-standard.org/standard/search/GET-CURRENT GET-CURRENT] и [http://forth-standard.org/standard/search/SET-CURRENT SET-CURRENT] в черновике Forth 200x ''(англ.)'' | ||
* [http:// | * [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH\09.FUNKZIONIROWANIE%20FORT-SISTEMY ФУНКЦИОНИРОВАНИЕ ФОРТ-СИСТЕМЫ] в книге [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH Л.Броуди «Начальный курс программирования на языке Форт»] | ||
Строка 42: | Строка 88: | ||
{{заготовка}} | {{заготовка}} | ||
[[Категория:Слова Каллисто]] | [[Категория:Слова Каллисто]] | ||
[[Категория: | [[Категория:Переменные USER]] | ||
[[Категория:Управление поиском слов | [[Категория:Встроенные переменные Каллисто]] | ||
[[Категория:Управление поиском слов]] | |||
[[Категория:Фортовские слова]] |
Текущая версия от 18:34, 10 ноября 2017
CURRENT (текущий) — фортовская переменная Каллисто.
CURRENT ( −− a ) Переменная, текущий пополняемый набор слов.
Переменная указывает набор слов, в который добавляются определения новых слов.
К переменной CURRENT редко обращаются по имени. Обычно её значение меняют с помощью слова DEFINITIONS.
Ввод слова CURRENT[править]
В режиме ЛАТ последовательно нажмите клавиши С/П 3 × × ИП 4 2
GET-CURRENT и SET-CURRENT в стандарте ANS Forth[править]
16.6.1.1643 GET-CURRENT SEARCH ( -- wid ) Возвращает wid, идентификатор списка слов компиляции. 16.6.1.2195 SET-CURRENT SEARCH ( wid -- ) Устанавливает список слов компиляции на список слов, идентифицированный wid.
История[править]
Слово из стандарта Forth 83. Было исключено из стандарта ANS Forth в пользу механизма ALSO/ONLY.
CURRENT в предыдущем стандарте Forth-83 (англ.)[править]
CURRENT -- addr U,79 The address of a variable specifying the vocabulary in which new word definitions are appended.
CURRENT в стандарте Forth-79 (англ.)[править]
CURRENT -- addr U,137 Leave the address of a variable specifying the vocabulary into which new word definitions are to be entered.
Реализация[править]
93 rrCURRENT .EQU 1106 ; 11106 CURRENT − Указатель, к какому словарю будет отнесено новое слово 94 pCURRENT .EQU 106 95 rlCURRENT .EQU 1107 … 2849 ;#CURRENT 2850 ; CURRENT ( −− a ) Переменная, текущий пополняемый список слов. 2851 LCURRENT: .DB 7 2852 .TEXT "CURRENT" 2853 .DW LCONTEXT 2854 CURR: .DW SUSE 2855 .DB pCURRENT ; Переменная указывает список слов, в который вводятся определения новых слов.
Реализация из SP-Forth 4.20:
USER CURRENT \ дает wid текущего словаря компиляции … : SET-CURRENT ( wid -- ) \ 94 SEARCH \ Установить список компиляции на список, идентифицируемый wid. CURRENT ! ; : GET-CURRENT ( -- wid ) \ 94 SEARCH \ Возвращает wid - идентификатор списка компиляции. CURRENT @ ;
Советская реализация[править]
Описание и определение переменной CURRENT в ядре ФОРТ-ЕС:
CURRENT П->А ПЕРЕМЕННАЯ - СПИСОК ДЛЯ ДОБАВЛЕНИЯ СЛОВ 7 Экран номер 7 ( 09.09.86 КОНСТАНТЫ И СИСТЕМНЫЕ ПЕРЕМЕННЫЕ ) VARIABLE CURRENT ( ТЕКУЩИЙ СПИСОК - КУДА ДОБАВЛЯЕМ)
Определение переменной CURRENT в FORTH ИТЭФ:
HEAD 207Q, 'CURREN',324Q,CURR,$USE ; CURRENT DW 52Q
Ссылки[править]
- Исходный текст слова CURRENT в Каллисто Классик 1.0
- Слова GET-CURRENT и SET-CURRENT в стандарте ANS Forth (англ.)
- Слова GET-CURRENT и SET-CURRENT в черновике Forth 200x (англ.)
- ФУНКЦИОНИРОВАНИЕ ФОРТ-СИСТЕМЫ в книге Л.Броуди «Начальный курс программирования на языке Форт»
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |