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

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 27: Строка 27:
  Типичное использование:
  Типичное использование:
         ... CREATE SOMETHING ...
         ... CREATE SOMETHING ...
== CREATE в предыдущем стандарте Forth-83 (англ.) ==
      CREATE      --                            M,79
          A defining word executed in the form:
                  CREATE <name>
          Creates a dictionary entry for <name>.  After <name> is
          created, the next available dictionary location is the first
          byte of <name>'s parameter field.  When <name> is
          subsequently executed, the address of the first byte of
          <name>'s parameter field is left on the stack.  CREATE does
          not allocate space in <name>'s parameter field.





Версия от 00:49, 7 сентября 2015

CREATE — стандартное слово Каллисто.

Формирует слово с именем XXX (заголовок и CFA), оставляя его поле параметров пустым.


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

6.1.1000   CREATE                                                          CORE
           ( "<spaces>name" -- )
           Пропускает ведущие разделители пробелы. Выделяет name, ограниченное 
           пробелом. Создает определение для name с семантикой выполнения, 
           определенной ниже. Если указатель области данных не выровнен, 
           резервирует достаточно области данных для его выравнивания. Новый 
           указатель области данных определяет поле данных name. CREATE не 
           распределяет область данных в поле данных name.
       name Выполнение: ( -- a-addr )
           a-addr - адрес поля данных name. Семантика выполнения name может 
           быть расширена использованием DOES>.
       См.: 3.3.3 Область данных, 6.1.1250 DOES>.
A.6.1.1000   CREATE
Адрес области данных слова, определенного CREATE, дается указателем области 
данных немедленно после выполнения CREATE.
Резервирование пространства поля данных типично делается с помощью ALLOT.
Типичное использование:
       ... CREATE SOMETHING ...


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

     CREATE       --                            M,79
          A defining word executed in the form:
                  CREATE <name>
          Creates a dictionary entry for <name>.  After <name> is
          created, the next available dictionary location is the first
          byte of <name>'s parameter field.  When <name> is
          subsequently executed, the address of the first byte of
          <name>'s parameter field is left on the stack.  CREATE does
          not allocate space in <name>'s parameter field.


Ссылки


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


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