Слово H: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
'''H''' (указатель словаря, читается «эйч») — встроенная переменная [[Каллисто]].
'''H''' (указатель словаря, читается «эйч») — фортовская переменная [[Каллисто]].
  H              ( −− a )                            Переменная, адрес вершины словаря.
  H              ( −− a )                            Переменная, адрес вершины словаря.
Переменная '''H''' указывает на первую свободную ячейку словаря, '''H''' [[Слово @|@]] = [[HERE]].
Переменная '''H''' указывает на первую свободную ячейку словаря, '''H''' [[Слово @|@]] = [[HERE]].

Версия от 04:40, 20 июня 2016

H (указатель словаря, читается «эйч») — фортовская переменная Каллисто.

H              ( −− a )                             Переменная, адрес вершины словаря.

Переменная H указывает на первую свободную ячейку словаря, H @ = HERE.

Ввод слова H

В режиме ЛАТ нажмите чёрную клавишу  ПП 

Заметки

Переменная H отсутствует в стандартах Форта, поэтому её использование ухудшает переносимость программы. В большинстве случаев достаточно использовать стандартные слова HERE и ALLOT.

История

H это первая буква слова HERE

Т.к. переменная H в стандартах Форта отсутствует, в некоторых системах Форта она и называется по другому: DP CP

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

DP            ----  addr                      U,L
       A user variable, the dictionary pointer, which contains the address
       of the next free memory above the dictionary. The value may be read
       by HERE and altered by ALLOT.

Реализация

В ФОРТ-ЕС вместо переменной H использовался примитив DP!

Вот его описание и определение:

DP!    * A-> УСТАНОВИТЬ ВЕРШИНУ СЛОВАРЯ НА АДРЕС A              10

                     Экран номер 10
( 31.03.86       HERE ALLOT ALIGN ALIGNH DP! )

CODE DP!  ( A->)  RD PULL, RD RMASK NR, POP 8, END-CODE

В FORTH ИТЭФ переменная H называлась DP

Вот её определение:

            HEAD     202Q,'D',320Q,DP,$USE                ; DP
            DW 22Q
            ...
   XDP     DW  16000 DUP(0)           ; DICTIONARY

Ссылки


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


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