COUNT

Материал из ПМК вики
Перейти к навигации Перейти к поиску

COUNT (подсчёт, счётчик) — стандартное слово Каллисто.

COUNT          ( a -- a1 u )                   Подсчёт. Даёт адрес a1 и длину u строки со счётчиком a.
Стек до работы COUNT
Картинка из книги Лео Броди «Starting FORTH»
Стек после работы COUNT
Картинка из книги Лео Броди «Starting FORTH»

Кладёт в стек адрес первой литеры a1 и число литер u строки со счётчиком a.

Ввод слова COUNT

В режиме ЛАТ последовательно нажмите клавиши  С/П   5   3   4   2 

COUNT в стандарте ANS Forth

6.1.0980   COUNT                                                           CORE
           ( c-addr1 -- c-addr2 u )
           Возвращает спецификацию символьной строки для строки со счетчиком 
           сохраненной в c-addr1.   c-addr2 - адрес первого символа после c-
           addr1. u - содержимое символа в c-addr1, который является длиной в 
           символах строки в c-addr2.

COUNT в предыдущем стандарте Forth-83 (англ.)

     COUNT        addr1 -- addr2 +n             79
          addr2 is addr1+1 and +n is the length of the counted string
          at addr1.  The byte at addr1 contains the byte count +n.
          Range of +n is {0.255}  See:  "string, counted"

COUNT в стандарте Forth-79 (англ.)

COUNT          addr -- addr+1 n              159
    Leave  the  address  addr+1 and the character  count  of  text
    beginning  at addr.   The first byte at addr must contain  the
    character count n.  Range of n is {0..255}.

COUNT в fig-FORTH Release 1 glossary, май 1979 (англ.)

COUNT          addr1 --- addr2 n             L0
       Leave the byte address addr2 and byte count n of a message text
       beginning at address addr1. It is presumed that the first byte at
       addr1 contains the text byte count and the actual text starts with
       the second byte.
       Typically COUNT is followed by TYPE.

Реализация

Юрий Семёнов приводит следующее определение слова COUNT (стр. 36):

: COUNT  ( a -- a+1 # )   ↑ 1+  ↔ C@ ;

Описание и определение слова COUNT в ядре ФОРТ-ЕС:

COUNT     Т->А,N ДАТЬ АДРЕС ПЕРВОЙ ЛИТЕРЫ И ЧИСЛО               28
          ЛИТЕР N СТРОКИ СО СЧЕТЧИКОМ Т

                     Экран номер 28
( 31.03.86 LIT" COUNT ," " ". (."/ ." C" ( ,( QUIT ABORT )

: COUNT ( T->A,N)  DUP 1+ SWAP C@ 2DUP + С@ IF 1+ THEN ;

Определение слова COUNT в FORTH ИТЭФ:

             HEAD    205Q,'COUN',324Q,COUNT,$COL          ; COUNT
             DW  DUBL,ONEP,SWAP,CAT,SEMI

Ссылки


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


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