+!: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) |
||
Строка 30: | Строка 30: | ||
== Реализация +! == | == Реализация +! == | ||
У Баранова-Ноздрунова приводится следующее описание слова +! | У Баранова-Ноздрунова (стр. 22) и Юрия Семёнова (стр. 22) приводится следующее описание слова +!: | ||
: +! ( N,A ---> ) | : +! ( N,A ---> ) ( в стеке n ADR ) | ||
↑ ( n ADR ADR ) | |||
@ ( запись в стек содержимого адреса n ADR [ADR] ) | |||
rot ( ADR [ADR] n ) | |||
+ ( приращение ADR [ADR]+n ) | |||
↔ ( [ADR]+n ADR ) | |||
! ; ( запись результата по адресу, хранящемуся стеке) | |||
== Ссылки == | == Ссылки == |
Версия от 01:45, 12 сентября 2015
+! (плюс-присвоить, добавить) — стандартное слово Каллисто.
Добавляет к содержимому ячейки с адресом a число n
+! в стандарте ANS Forth
6.1.0130 +! "plus-store" CORE ( n|u a-addr -- ) Прибавляет n|u к числу одна-ячейка в a-addr.
См.: 3.3.3.1 Выравнивание адреса.
+! в предыдущем стандарте Forth-83 (англ.)
+! w1 addr -- 79 "plus-store" w1 is added to the w value at addr using the convention for + . This sum replaces the original value at addr.
+! в стандарте Forth-79 (англ.)
+! n addr -- 157 "plus-store" Add n to the 16-bit value at the address, by the convention given for + .
+! в fig-FORTH Release 1 glossary, май 1979 (англ.)
+! n addr --- L0 Add n to the value at the address. Pronounced "plus-store".
Реализация +!
У Баранова-Ноздрунова (стр. 22) и Юрия Семёнова (стр. 22) приводится следующее описание слова +!:
: +! ( N,A ---> ) ( в стеке n ADR ) ↑ ( n ADR ADR ) @ ( запись в стек содержимого адреса n ADR [ADR] ) rot ( ADR [ADR] n ) + ( приращение ADR [ADR]+n ) ↔ ( [ADR]+n ADR ) ! ; ( запись результата по адресу, хранящемуся стеке)
Ссылки
- Слово +! (plus-store) в стандарте ANS Forth (англ.)
- Слово +! (plus-store) в черновике Forth 200x (англ.)
- Augmented assignment в английской Википедии (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |