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

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
'''ALLOT''' (распределить, занять) — стандартное слово [[Каллисто]].
'''ALLOT''' (распределить, занять) — стандартное слово [[Каллисто]].
 
ALLOT          ( n −− )                            Занять. Сместить вершину словаря на n байт.
Добавляет n байт к полю параметров слова, описанного последним.
Добавляет n байт к полю параметров слова, описанного последним.


Строка 64: Строка 64:


== Ссылки ==
== Ссылки ==
* {{Исходник|ALLOT|ALLOT}}
* См. слова [[HERE]] и [[Слово H|H]], а также слово [[ДALLOT]]
* См. слова [[HERE]] и [[Слово H|H]], а также слово [[ДALLOT]]
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0710 ALLOT] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0710 ALLOT] в стандарте ANS Forth ''(англ.)''
Строка 77: Строка 78:
[[Категория:Примитивы]]
[[Категория:Примитивы]]
[[Категория:Работа со словарём Каллисто]]
[[Категория:Работа со словарём Каллисто]]
[[Категория:Слова Каллисто без стековых диаграмм]]

Версия от 18:39, 4 июня 2016

ALLOT (распределить, занять) — стандартное слово Каллисто.

ALLOT          ( n −− )                             Занять. Сместить вершину словаря на n байт.

Добавляет n байт к полю параметров слова, описанного последним.

Оператор N ALLOT резервирует в словаре N байт.

Ввод слова ALLOT

В режиме ЛАТ последовательно нажмите клавиши  ШГ←         5   2 

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

6.1.0710   ALLOT                                                           CORE
           ( n -- )
           Если n больше нуля, резервирует n адресуемых элементов области 
           данных. Если n меньше нуля, освобождает | n | адресуемых элементов 
           области данных. Если n нуль, оставляет указатель области данных 
           неизменным.
           Если указатель области данных выровнен, и n - кратно размеру ячейки 
           перед выполнением ALLOT, он останется выровненным, и после 
           завершения выполнения ALLOT.
           Если указатель области данных выровнен на символ, и n - кратно 
           размеру символа перед выполнением ALLOT, он останется выровненным 
           на символ, и после завершения выполнения ALLOT.
       См.: 3.3.3 Область данных.

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

     ALLOT        w --                          79
          Allocates w bytes in the dictionary.  The address of the
          next available dictionary entry is updated accordingly.

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

ALLOT          n --                          154
    Add  n  bytes  to the parameter field  of  the  most  recently
    defined word.

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

ALLOT         n  ---                           L0
       Add the signed number to the dictionary pointer DP. May be used to
       reserve dictionary space or re-origin memory. n is with regard to
       computer address type (byte or word).

История

N для советских ЭВМ типа ДВК или СМ должно было быть чётным.

Реализация

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

ALLOT     W-> СМЕСТИТЬ ВЕРШИНУ СЛОВАРЯ НА W БАЙТОВ              10

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

CODE ALLOT  ( N-> ) RD FIRST AH,   POP B,   END-CODE

В FORTH ИТЭФ слово ALLOT также было примитивом, вот его определение:

            HEAD     205Q,'ALLO',3240,ALLOT               ; ALLOT
            POP  BX
            ADD  [DI]+22Q,BX
            NEXT

Ссылки


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


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