+!
+! (добавить, читается «плюс-присвоить») — стандартное слово Каллисто.
Добавляет к содержимому ячейки с адресом a число n
Ввод слова +!
В режиме NUM последовательно нажмите две клавиши + П
+! в стандарте 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 ) ! ; ( запись результата по адресу, хранящемуся стеке)
Ссылки
- См. слова +, ! и TOGGLE
- Слово +! (plus-store) в стандарте ANS Forth (англ.)
- Слово +! (plus-store) в черновике Forth 200x (англ.)
- Augmented assignment в английской Википедии (англ.)
- Variables, Constants, and Arrays в книге Leo Brodie Starting Forth (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |