Редактирование: Слово J
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
'''J''' (внешний счётчик, читается «джэй») — стандартное слово [[Каллисто]]. | '''J''' (внешний счётчик, читается «джэй») — стандартное слово [[Каллисто]]. | ||
J ( −− | J ( −− D ) Дать текущее значение счётчика внешнего цикла FOR. | ||
Помещает в [[Стек данных|стек данных]] значение счётчика внешнего цикла [[FOR]]…[[NEXT]]. | |||
== Ввод слова J == | == Ввод слова J == | ||
Строка 7: | Строка 7: | ||
== J в стандарте ANS Forth == | == J в стандарте ANS Forth == | ||
6.1.1730 J CORE | 6.1.1730 J CORE | ||
Интерпретация: Семантика интерпретации для этого слова не определена. | Интерпретация: Семантика интерпретации для этого слова не определена. | ||
Строка 21: | Строка 20: | ||
: X ... DO ... DO ... J ... LOOP ... +LOOP ... ; | : X ... DO ... DO ... J ... LOOP ... +LOOP ... ; | ||
== J в предыдущем стандарте Forth-83 (англ.) == | |||
J -- w C,79 | J -- w C,79 | ||
w is a copy of the index of the next outer loop. May only | w is a copy of the index of the next outer loop. May only | ||
Строка 31: | Строка 28: | ||
DO ... DO ... J ... LOOP ... +LOOP | DO ... DO ... J ... LOOP ... +LOOP | ||
== J в стандарте Forth-79 (англ.) == | |||
J -- n C,225 | J -- n C,225 | ||
Return the index of the next outer loop. May only be used | Return the index of the next outer loop. May only be used | ||
within a nested DO-LOOP in the form: | within a nested DO-LOOP in the form: | ||
DO ... DO ... J ... LOOP ... LOOP | DO ... DO ... J ... LOOP ... LOOP | ||
== Совместимость == | |||
В [[Каллисто]] цикл [[FOR]] кладёт на [[Стек возвратов Каллисто|стек возвратов]] два 16-битных значения. Поэтому слово J считывает значение третьего сверху слова в [[Стек возвратов Каллисто|стеке возвратов]] — а не второго, как в Форте. | |||
== Реализация == | == Реализация == | ||
Слово J в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение: | Слово J в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение: | ||
<PRE> | <PRE> | ||
Строка 84: | Строка 52: | ||
== Ссылки == | == Ссылки == | ||
* {{Исходник|J|J}} | * {{Исходник|J|J}} | ||
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.1730 J] и [http://forth.sourceforge.net/standard/dpans/dpansa6.htm#A.6.1.1730 комментарий к нему] в стандарте ANS Forth ''(англ.)'' | * Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.1730 J] и [http://forth.sourceforge.net/standard/dpans/dpansa6.htm#A.6.1.1730 комментарий к нему] в стандарте ANS Forth ''(англ.)'' | ||
* Слово [http://forth-standard.org/standard/core/J J] и [http://forth-standard.org/standard/rationale#rat:core:J комментарий к нему] в черновике Forth 200x ''(англ.)'' | * Слово [http://forth-standard.org/standard/core/J J] и [http://forth-standard.org/standard/rationale#rat:core:J комментарий к нему] в черновике Forth 200x ''(англ.)'' | ||
Строка 96: | Строка 63: | ||
[[Категория:Слова Каллисто]] | [[Категория:Слова Каллисто]] | ||
[[Категория:Примитивы]] | [[Категория:Примитивы]] | ||