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

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Строка 1: Строка 1:
'''SP@''' (считать SP, читается «эс-пи извлечь») — стандартное слово [[Каллисто]].
'''SP@''' (считать SP, читается «эс-пи извлечь») — стандартное слово [[Каллисто]].
 
SP@            ( −− a )                            Считать SP. Адрес текущей вершины стека данных.
Записывает в [[Стек данных|стек]] адрес вершины [[Стек данных|стека]], до исполнения команды [[SP@]]
Записывает в [[Стек данных|стек]] адрес вершины [[Стек данных|стека]], до исполнения команды [[SP@]]


Строка 47: Строка 47:


== Ссылки ==
== Ссылки ==
* {{Исходник|SPFetch|SP@}}
* См. слова [[!SP]] и [[S0]]
* См. слова [[!SP]] и [[S0]]
* [https://en.wikipedia.org/wiki/Stack_register Stack register в английской Википедии] ''(англ.)''
* [https://en.wikipedia.org/wiki/Stack_register Stack register в английской Википедии] ''(англ.)''
Строка 57: Строка 58:
[[Категория:Слова Каллисто]]
[[Категория:Слова Каллисто]]
[[Категория:Примитивы]]
[[Категория:Примитивы]]
[[Категория:Слова Каллисто без стековых диаграмм]]

Версия от 01:59, 4 июня 2016

SP@ (считать SP, читается «эс-пи извлечь») — стандартное слово Каллисто.

SP@            ( −− a )                             Считать SP. Адрес текущей вершины стека данных.

Записывает в стек адрес вершины стека, до исполнения команды SP@

Ввод слова SP@

В режиме ЛАТ последовательно нажмите четыре клавиши  1   6     P   ИП 

Эти нажатия оставляют клавиатуру в режиме NUM.

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

     SP@          -- addr                       79         "s-p-fetch"
          addr is the address of the top of the stack just before SP@
          was executed.

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

SP@            -- addr                       214        "s-p-fetch"
    Return  the address of the top of the stack,  just before  SP@
    was executed.

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

SP@            --- addr
       A computer dependent proceedure to return the address of the stack
       position to the top of the stack, as it was before SP@ was executed.
           (e.g.  1  2  SP@  @  .   .   .     would
           type 2  2   1)

Реализация

Слово SP@ пришло в Каллисто из ФОРТ-ЕС и FORTH ИТЭФ, где также было примитивом. Вот описание и определение SP@ из ФОРТ-ЕС:

SP@     +   ->А АДРЕС ТЕКУЩЕЙ ВЕРШИНЫ СТЕКА ДАННЫХ              20

                     Экран номер 20
( 31.03.86    SP@ SP! RP@ RP! 2/ 2* 2@ 2! DEPTH )

CODE SP@ ( ->A) RW1 RSTACK LR, RW1 RFORTH SR, PUSHRW1 B,

Определение SP@ из FORTH ИТЭФ:

   ENDA:    PUSH AX
            NEXT
            ...
            HEAD     203Q,'SP',300Q,SPAT                  ; SP@
            MOV  AX, SP
            JMP  ENDA

Ссылки


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


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