Редактирование: Слово ?

Перейти к навигации Перейти к поиску
Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы войдёте или создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.

Текущая версия Ваш текст
Строка 5: Строка 5:
== Ввод слова ? ==
== Ввод слова ? ==
В [[Режим NUM|режиме NUM]] нажмите [[Клавиша K|синюю клавишу {{Синяя клавиша|K}}]]
В [[Режим NUM|режиме NUM]] нажмите [[Клавиша K|синюю клавишу {{Синяя клавиша|K}}]]
== Детали реализации ==
Слово ? это обёртка вокруг слов [[Слово @|@]] и [[Слово .|.]]. Оно может выдать число с плавающей запятой, если это число считывается из [[Регистр десятичных данных|десятичного регистра]].
Тем не менее, слово ? не предназначено для считывания беззнаковых 16-битных ячеек памяти и содержимого [[Регистры функций МК|регистров функций]]. К счастью, для этих целей просто написать собственные отладочные слова.


== История ==
== История ==
Строка 23: Строка 28:


== Реализация ==
== Реализация ==
Слово ? это обёртка вокруг слов [[Слово @|@]] и [[Слово .|.]]. Оно может выдать число с плавающей запятой, если это число считывается из [[Регистр десятичных данных|десятичного регистра]].
Тем не менее, слово ? не предназначено для считывания беззнаковых 16-битных ячеек памяти и содержимого [[Регистры функций МК|регистров функций]]. К счастью, для этих целей просто написать собственные отладочные слова.
<pre>
3850 ;              ∗∗ Вспомогательные процедуры ∗∗
3851
3852 ;#q
3853 ; ?                ( a −− )                            Вывести значение ячейки по адресу a.
3854 ; Удалить число из стека и отобразить на экране содержимое ячейки, адрес которой равен этому числу.
3855 ; В Каллисто может выдать число с плавающей запятой, если оно считывается из десятичного регистра.
3856 LQUEST:        .DB    1
3857                .TEXT  "?"                    ; ( адрес −− )
3858                .DW    LDOTR
3859 QUEST:          .DW CALL, AT, BRAN,RFDOT
</pre>
Реализация из SP-Forth 4.20:
<pre>
: ? ( a-addr -- ) \ 94 TOOLS
\ Показать значение, хранящееся по адресу a-addr.
\ ? может быть реализован с использованием слов форматного преобразования
\ чисел. Соответственно, он может испортить перемещаемую область,
\ идентифицируемую #>.
  @ .
;
</pre>
=== Советская реализация ===
Описание и определение слова ? в ядре ФОРТ-ЕС:
Описание и определение слова ? в ядре ФОРТ-ЕС:
<PRE>
<PRE>
Строка 79: Строка 57:
[[Категория:Стандартные слова]]
[[Категория:Стандартные слова]]
[[Категория:1994 TOOLS]]
[[Категория:1994 TOOLS]]
[[Категория:2012 TOOLS]]
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Pmkwiki:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:

Отменить Справка по редактированию (в новом окне)