Слово ?

Материал из ПМК вики
Перейти к навигации Перейти к поиску

? (вопросительный знак, читается «вопрос») — встроенное слово Каллисто. Заглянуть в ячейку, адрес которой на стеке.

?              ( a −− )                             Вывести значение ячейки по адресу a.

Удаляет число из стека и отображает на индикаторе содержимое ячейки, адрес которой равен этому числу.

Ввод слова ?

В режиме NUM нажмите синюю клавишу  K 

Детали реализации

Слово ? это обёртка вокруг слов @ и .. Оно может выдать число с плавающей запятой, если оно считывается из десятичного регистра.

Тем не менее, слово ? не предназначено для считывания беззнаковых 16-битных ячеек памяти и содержимого регистров функций. К счастью, для этих целей просто написать собственные отладочные слова.

История

Слово было в Форте−79, убрано из Форта−84. Оно очень удобно для отладки.

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

?              addr --                       194    "question-mark"
     Display the number at address, using the format of "." .

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

?             addr  --                         L0
        Print the value contained at the address in free format according to
        the current base.

Реализация

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

?       * А-> НАПЕЧАТАТЬ ЗНАЧЕНИЕ ПО АДРЕСУ А                   38

                     Экран номер 38
( 31.03.86    D.R  D.  .R . H.  U.  U.R  ?  )

: ? ( A->) @ . ;

Определение слова ? в FORTH ИТЭФ:

             HEAD    201Q,,277Q,QUEST,$COL                ; ?
             DW  AT,$DOT,SEMI

Ссылки


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


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