2DUP: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) |
AtH (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
'''2DUP''' (два-дублировать) — стандартное слово [[Каллисто]]. | '''2DUP''' (два-дублировать) — стандартное слово [[Каллисто]]. Продублировать пару [[Десятичное число|чисел]] в [[Стек данных|стеке]]. | ||
2DUP ( x1 x2 -- x1 x2 x1 x2 ) | |||
Дублирует верхнюю пару [[Ячейка (Каллисто)|ячеек]] x1 x2 в [[Стек данных|стеке]]. | |||
== 2DUP в стандарте ANS Forth == | == 2DUP в стандарте ANS Forth == | ||
Строка 8: | Строка 8: | ||
( x1 x2 -- x1 x2 x1 x2 ) | ( x1 x2 -- x1 x2 x1 x2 ) | ||
Дублирует пару-ячеек x1 x2. | Дублирует пару-ячеек x1 x2. | ||
== 2DUP в предыдущем стандарте Forth-83 (англ.) == | == 2DUP в предыдущем стандарте Forth-83 (англ.) == | ||
2DUP 32b -- 32b 32b 79 "two-dupe" | 2DUP 32b -- 32b 32b 79 "two-dupe" | ||
Duplicate 32b. | Duplicate 32b. | ||
== 2DUP в стандарте Forth-79 (англ.) == | == 2DUP в стандарте Forth-79 (англ.) == | ||
2DUP d -- d d "two-dupe" | 2DUP d -- d d "two-dupe" | ||
Duplicate the top double number on the stack. | Duplicate the top double number on the stack. | ||
== Заметки == | == Заметки == | ||
Строка 25: | Строка 22: | ||
== Ссылки == | == Ссылки == | ||
* См. слова [[↑ (Каллисто)|↑]], [[2DROP]], [[2SWAP]] | |||
* [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0380 Слово 2DUP (two-dupe) в стандарте ANS Forth] ''(англ.)'' | * [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0380 Слово 2DUP (two-dupe) в стандарте ANS Forth] ''(англ.)'' | ||
* [http://www.forth200x.org/documents/html/core.html#core:2DUP Слово 2DUP (two-dupe) в черновике Forth 200x] ''(англ.)'' | * [http://www.forth200x.org/documents/html/core.html#core:2DUP Слово 2DUP (two-dupe) в черновике Forth 200x] ''(англ.)'' | ||
Строка 33: | Строка 31: | ||
[[Категория:Слова Каллисто]] | [[Категория:Слова Каллисто]] | ||
[[Категория:Стековые манипуляции Каллисто]] | [[Категория:Стековые манипуляции Каллисто]] | ||
[[Категория: | [[Категория:Описание бета-версии Каллисто]] |
Версия от 23:19, 26 октября 2015
2DUP (два-дублировать) — стандартное слово Каллисто. Продублировать пару чисел в стеке.
2DUP ( x1 x2 -- x1 x2 x1 x2 )
Дублирует верхнюю пару ячеек x1 x2 в стеке.
2DUP в стандарте ANS Forth
6.1.0380 2DUP "two-dupe" CORE ( x1 x2 -- x1 x2 x1 x2 ) Дублирует пару-ячеек x1 x2.
2DUP в предыдущем стандарте Forth-83 (англ.)
2DUP 32b -- 32b 32b 79 "two-dupe" Duplicate 32b.
2DUP в стандарте Forth-79 (англ.)
2DUP d -- d d "two-dupe" Duplicate the top double number on the stack.
Заметки
В Каллисто 2DUP реализован, как примитив. Но при необходимости 2DUP можно легко выразить через OVER:
: 2DUP ( n1 n2 -- n1 n2 n1 n2) OVER OVER ;
Ссылки
- См. слова ↑, 2DROP, 2SWAP
- Слово 2DUP (two-dupe) в стандарте ANS Forth (англ.)
- Слово 2DUP (two-dupe) в черновике Forth 200x (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |