S⟩D: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) |
AtH (обсуждение | вклад) (→Ссылки) |
||
Строка 47: | Строка 47: | ||
== Ссылки == | == Ссылки == | ||
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.2170 S>D (s-to-d)] в стандарте ANS Forth ''(англ.)'' | * Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.2170 S>D (s-to-d)] в стандарте ANS Forth ''(англ.)'' | ||
* Слово [http:// | * Слово [http://forth-standard.org/standard/core/StoD S>D (s-to-d)] в черновике Forth 200x ''(англ.)'' | ||
Версия от 08:10, 29 марта 2016
S>D — стандартное слово Каллисто.
Ввод слова S>D
В режиме ЛАТ последовательно нажмите клавиши 1 P F ИП Р-ГРД-Г K
S>D в стандарте ANS Forth
6.1.2170 S>D "s-to-d" CORE ( n -- d ) Преобразовывает число n в число d две-ячейки с тем же самым числовым значением.
S->D в fig-FORTH Release 1 glossary, май 1979 (англ.)
S->D n --- d Sign extend a single number to form a double number.
Реализация
У Баранова-Ноздрунова приводится следующее определение слова S>D (стр. 29):
: S>D ( A ---> AA ) ↑ 0< IF -1 ELSE 0 THEN ;
Thinking Forth (стр. 242, Minimizing Control Structures) предлагает более быстрое решение:
: s>d ( n -- d ) \ расширение со знаком s в d ↑ O< ;
В ФОРТ-ЕС слово S>D было примитивом. Вот его описание и определение:
S>D * N->D РАСШИРИТЬ N ДО ЧИСЛА ДВОЙНОЙ ДЛИНЫ D 14 Экран номер 14 ( 31.03.86 S>D DABS DNEGATE D+ D- DU< ) CODE S>D ( N->D ) RW1 PULL, PUSH2RW1 B, END-CODE
В FORTH ИТЭФ слово S>D называлось S->D и также было примитивом, вот его определение (исправлена опечатка PUSH вместо PUS):
HEAD 204Q,'S->',304Q,STOD ; S->D POP AX PUSH AX MOV CX, DX ; Сохранение содержимого DX CWD PUSH DX MOV DX, CX ; Восстановление DX NEXT
Ссылки
- Слово S>D (s-to-d) в стандарте ANS Forth (англ.)
- Слово S>D (s-to-d) в черновике Forth 200x (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |