Редактирование: DECIMAL

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

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

Текущая версия Ваш текст
Строка 1: Строка 1:
'''DECIMAL''' (десятичная) — стандартное слово [[Каллисто]]. Перейти в [[Десятичная система счисления|десятичную систему счисления]].
'''DECIMAL''' — стандартное слово [[Каллисто]].
DECIMAL        ( −− )                              Установить десятичную систему счисления.
Устанавливает [[BASE|основание системы счисления]] при преобразовании чисел на [[Десятичная система счисления|десять]]. Эта система счисления устанавливается по умолчанию, после запуска [[Каллисто]].


== Ввод слова DECIMAL ==
Устанавливает десятичную систему счисления для ввода-вывода.
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша K|{{Синяя клавиша|K}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]] [[Клавиша 7|{{Серая клавиша|7}}]] [[Клавиша ÷|{{Серая клавиша|÷}}]] {{ШГ←}} [[Клавиша -|{{Серая клавиша|−}}]]


== DECIMAL в стандарте ANS Forth ==
6.1.1170  DECIMAL                                                        CORE
            ( -- )
            Устанавливает основание системы счисления преобразования чисел на
            десять (десятичные числа).
== История ==
Слово DECIMAL пришло в [[Каллисто]] из Форта, где оно входит во все стандарты, не изменившись со времён fig-Форта в 1979 году.
=== DECIMAL в предыдущем стандарте Forth-83 (англ.) ===
      DECIMAL      --                            79
          Set the input-output numeric conversion base to ten.
=== DECIMAL в стандарте Forth-79 (англ.) ===
DECIMAL                                      197
    Set the input-output numeric conversion base to ten.
=== DECIMAL в fig-FORTH Release 1 glossary, май 1979 (англ.) ===
DECIMAL                                        L0
        Set the numeric conversion BASE for decimal input-output.
== Реализация ==
<pre>
  99 rrBASE          .EQU    1110                  ; 11110  BASE − основание действующей системы счисления
100 pBASE          .EQU      110
101 rlBASE          .EQU    1111
2374 SETBASE:        PPM rlBASE
2375                CX PPM rrBASE                  ; Каллисто использует 16−битную переменную для совместимости с Фортом.
2376                KGOTO9
2377
2378 ;#DECIMAL
2379 ; DECIMAL          ( −− )                              Установить десятичную систему счисления для ввода−вывода.
2380 LDEC:          .DB    7
2381                .TEXT  "DECIMAL"
2382                .DW    LHEX
2383 DEC:            .DW    JDEC
2384 JDEC:          10  PGOTO SETBASE
</pre>
Реализация из SP-Forth 4.20:
<pre>
: DECIMAL ( -- ) \ 94
\ Установить основание системы счисления равным десяти.
  10 BASE !
;
</pre>
=== Советская реализация ===
У Баранова-Ноздрунова приводится следующее определение слова DECIMAL через присваивание переменной [[BASE]] числа 10 (стр. 24):
  : decimal  ( -- )  10 base ! ;
Описание и определение слова DECIMAL в ядре ФОРТ-ЕС:
<PRE>
DECIMAL  -> ПЕРЕЙТИ В ДЕСЯТИЧНУЮ СИСТЕМУ                      22
                    Экран номер 22
( 31.03.86  FILL ERASE BLANK COMPILE [ ] MIN MAX HEX DECIMAL)
: DECIMAL ( ->) 10 BASE ! ;
</PRE>
В FORTH ИТЭФ слово DECIMAL было [[примитив]]ом, вот его определение:
<PRE>
            HEAD    207Q,'DECIMA',314Q,DEC              ; DECIMAL
            MOV  WORD PTR [DI]+56Q,10
            NEXT
</PRE>


== Ссылки ==
== Ссылки ==
* {{Исходник|DECIMAL|DECIMAL}}
* [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.1170 Слово DECIMAL в стандарте ANS Forth] ''(англ.)''
* См. слова Каллисто [[HEX]], [[BASE]]
* [http://www.forth200x.org/documents/html/core.html#core:DECIMAL Слово DECIMAL в черновике Forth 200x] ''(англ.)''
* [https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%81%D1%8F%D1%82%D0%B8%D1%87%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%81%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F Десятичная система счисления на Википедии]
* См. также слова Каллисто [[HEX]], [[BASE]]
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.1170 DECIMAL] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth-standard.org/standard/core/DECIMAL DECIMAL] в черновике Forth 200x ''(англ.)''
* [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH\07.TISLO%20TIPOW%20TISEL ЧИСЛО ТИПОВ ЧИСЕЛ] в книге [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH Л.Броуди «Начальный курс программирования на языке Форт»]
* [http://www.forth.com/starting-forth/sf7/sf7.html A Number of Kinds of Numbers] в книге [http://www.forth.com/starting-forth/ Leo Brodie Starting Forth] ''(англ.)''
* [http://www.forth.com/starting-forth/sf8/sf8.html Variables, Constants, and Arrays] в книге [http://www.forth.com/starting-forth/ Leo Brodie Starting Forth] ''(англ.)''




Строка 87: Строка 13:
{{заготовка}}
{{заготовка}}
[[Категория:Слова Каллисто]]
[[Категория:Слова Каллисто]]
[[Категория:Примитивы]]
[[Категория:Стандартные слова]]
[[Категория:1994 CORE]]
[[Категория:2012 CORE]]
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Pmkwiki:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

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

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