RP@
RP@ (считать RP, читается «ар-пи извлечь») — фортовское слово Каллисто.
RP@ ( −− a ) Считать RP. Адрес текущей вершины стека возвратов.
Адрес текущей вершины стека возвратов.
Ввод слова RP@[править]
В режиме ЛАТ последовательно нажмите четыре клавиши × 6 P ИП
Эти нажатия оставляют клавиатуру в режиме NUM.
Реализация[править]
1738 SPAT0: 1 EE 4 + KM3 KGOTO9 … 1749 ; ∗∗ Стек возвратов ∗∗ 1750 ; 1751 ;#RPFetch 1752 ; RP@ ( −− a ) Считать RP. Адрес текущей вершины стека возвратов. 1753 LRPAT: .DB 3 1754 .TEXT "RP@" 1755 .DW LSPSTO 1756 RPAT: .DW JRPAT 1757 JRPAT: RM2 GOTO SPAT0
Реализация из SP-Forth 4.20:
CODE RP@ ( -- RP ) LEA EBP, -4 [EBP] MOV [EBP], EAX LEA EAX, 4 [ESP] RET END-CODE
Советская реализация[править]
Слово RP@ взято в Каллисто из ФОРТ-ЕС, где также было примитивом. Вот его описание и определение в ФОРТ-ЕС:
RP@ * ->A АДРЕС ТЕКУЩЕЙ ВЕРШИНЫ-СТЕКА ВОЗВРАТОВ 20 Экран номер 20 ( 31.03.86 SP@ SP! RP@ RP! 2/ 2* 2@ 2! DEPTH ) CODE RP@ ( ->A) RW1 RRET LR, RW1 RFORTH SR, PUSHRW1 B, END-CODE
Ссылки[править]
- Исходный текст слова RP@ в Каллисто Классик 1.0
- См. слова !RP и R0
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |