+!: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Строка 28: Строка 28:
         Pronounced "plus-store".
         Pronounced "plus-store".


== Реализация +! ==
== Реализация ==
У Баранова-Ноздрунова (стр. 22) и Юрия Семёнова (стр. 22) приводится следующее описание слова +!:
У Баранова-Ноздрунова (стр. 22) и Юрия Семёнова (стр. 22) приводится следующее определение слова +!:
   : +!  ( N,A ---> )                ( в стеке  n ADR      )
   : +!  ( N,A ---> )                ( в стеке  n ADR      )
       ↑                              (          n ADR ADR  )
       ↑                              (          n ADR ADR  )
Строка 38: Строка 38:
       ! ;  ( запись результата по адресу, хранящемуся стеке)
       ! ;  ( запись результата по адресу, хранящемуся стеке)


Слово +! в ФОРТ-ЕС было [[примитив]]ом. Вот его определение:
Слово +! в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение:
<PRE>
<PRE>
  +!          W,A ->                УВЕЛИЧИТЬ ЗНАЧЕНИЕ ПО АДРЕСУ A НА W  17
                     Экран номер 17
                     Экран номер 17
( 31.03,64  NEGATE ABS + - 1+ 1- 2+ 2- +!  1+!  )
( 31.03,64  NEGATE ABS + - 1+ 1- 2+ 2- +!  1+!  )

Версия от 18:18, 26 марта 2016

+! (добавить, читается «плюс-присвоить») — стандартное слово Каллисто.

Добавляет к содержимому ячейки с адресом 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 )
     ! ;   ( запись результата по адресу, хранящемуся стеке)

Слово +! в ФОРТ-ЕС было примитивом. Вот его описание и определение:

  +!          W,A ->                 УВЕЛИЧИТЬ ЗНАЧЕНИЕ ПО АДРЕСУ A НА W  17

                     Экран номер 17
( 31.03,64   NEGATE ABS + - 1+ 1- 2+ 2- +!  1+!  )

CODE +!   ( W,A->)   14 LHRW12 BAL,  RW2 RМASК NR,   RW1 0 (,
  RW2 RFORTH AН, RW1 0 (, RW2 RFORTH SТН, 2РОР B, END-CODE

Ссылки


  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.