S⟩D: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Строка 25: Строка 25:
В ФОРТ-ЕС слово S>D было [[примитив]]ом. Вот его определение:
В ФОРТ-ЕС слово S>D было [[примитив]]ом. Вот его определение:
<PRE>
<PRE>
S>D      *  N->D РАСШИРИТЬ N ДО ЧИСЛА ДВОЙНОЙ ДЛИНЫ D          14
                     Экран номер 14
                     Экран номер 14
(    31.03.86    S>D    DABS  DNEGATE D+ D- DU< )
(    31.03.86    S>D    DABS  DNEGATE D+ D- DU< )

Версия от 10:00, 26 марта 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

У Баранова-Ноздрунова приводится следующее описание слова 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

Ссылки

  • Слово S>D (s-to-d) в стандарте ANS Forth (англ.)
  • Слово S>D (s-to-d) в черновике Forth 200x (англ.)


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


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