PICK: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) (→Ссылки) |
AtH (обсуждение | вклад) (→Ссылки) |
||
Строка 39: | Строка 39: | ||
== Ссылки == | == Ссылки == | ||
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.2.2030 PICK] и [http://forth.sourceforge.net/standard/dpans/dpansa6.htm#A.6.2.2030 комментарий к нему] в стандарте ANS Forth ''(англ.)'' | * Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.2.2030 PICK] и [http://forth.sourceforge.net/standard/dpans/dpansa6.htm#A.6.2.2030 комментарий к нему] в стандарте ANS Forth ''(англ.)'' | ||
* Слово [http://www.forth200x.org/documents/html3/core/PICK.html PICK] | * Слово [http://www.forth200x.org/documents/html3/core/PICK.html PICK] и [http://www.forth200x.org/documents/html3/rationale.html#rat:core:PICK комментарий к нему] в черновике Forth 200x ''(англ.)'' | ||
Версия от 07:20, 22 февраля 2016
PICK (взять) — стандартное слово Каллисто. Продублировать n-ное сверху значение.
PICK ( xn ... x1 x0 n -- xn ... x1 x0 xn )
Удаляет n. Копирует элемент стека с номером n (считая от нуля, само число n при этом не считается) и записывает его наверх стека.
Детали реализации
Верхний элемент стека имеет номер нуль, так что 0 PICK равносильно ↑, а 1 PICK равносильно OVER.
PICK в стандарте ANS Forth
6.2.2030 PICK CORE EXT ( xu ... x1 x0 u -- xu ... x1 x0 xu ) Удаляет u. Копирует xu на вершину стека. Неопределенная ситуация существует, если до выполнения PICK на стеке меньше u+2 элементов.
A.6.2.2030 PICK 0 PICK эквивалентно DUP, и 1 PICK эквивалентно OVER.
PICK в предыдущем стандарте Forth-83 (англ.)
PICK +n -- 16b 83 16b is a copy of the +nth stack value, not counting +n itself. {0..the number of elements on stack-1} 0 PICK is equivalent to DUP 1 PICK is equivalent to OVER
PICK в стандарте Forth-79 (англ.)
PICK n1 -- n2 240 Return the contents of the n1-th stack value, not counting n1 itself. An error condition results for n less than one. 2 PICK is equivalent to OVER. {1..n}
История
В Форте-83 действие слова PICK подверглось кардинальному изменению.
В Каллисто слово PICK совместимо с версией Форта-83 и последующими. В программах, написанных для Форта-79 и более ранних версий, слово PICK надо заменять на последовательность 1− PICK
Ссылки
- Слово PICK и комментарий к нему в стандарте ANS Forth (англ.)
- Слово PICK и комментарий к нему в черновике Forth 200x (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |