Текущая версия |
Ваш текст |
Строка 1: |
Строка 1: |
| '''DECIMAL''' (десятичная) — стандартное слово [[Каллисто]]. Перейти в [[Десятичная система счисления|десятичную систему счисления]]. | | '''DECIMAL''' — стандартное слово [[Каллисто]]. |
| DECIMAL ( −− ) Установить десятичную систему счисления.
| | |
| Устанавливает [[BASE|основание системы счисления]] при преобразовании чисел на [[Десятичная система счисления|десять]]. Эта система счисления устанавливается по умолчанию, после запуска [[Каллисто]].
| | Устанавливает десятичную систему счисления для ввода-вывода. |
|
| |
|
| == Ввод слова DECIMAL ==
| |
| В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша K|{{Синяя клавиша|K}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]] [[Клавиша 7|{{Серая клавиша|7}}]] [[Клавиша ÷|{{Серая клавиша|÷}}]] {{ШГ←}} [[Клавиша -|{{Серая клавиша|−}}]]
| |
|
| |
|
| == DECIMAL в стандарте ANS Forth == | | == DECIMAL в стандарте ANS Forth == |
Строка 12: |
Строка 10: |
| десять (десятичные числа). | | десять (десятичные числа). |
|
| |
|
| == История ==
| |
| Слово DECIMAL пришло в [[Каллисто]] из Форта, где оно входит во все стандарты, не изменившись со времён fig-Форта в 1979 году.
| |
|
| |
|
| === DECIMAL в предыдущем стандарте Forth-83 (англ.) ===
| | == DECIMAL в предыдущем стандарте Forth-83 (англ.) == |
| DECIMAL -- 79 | | DECIMAL -- 79 |
| Set the input-output numeric conversion base to ten. | | Set the input-output numeric conversion base to ten. |
|
| |
|
| === DECIMAL в стандарте Forth-79 (англ.) ===
| | |
| | == DECIMAL в стандарте Forth-79 (англ.) == |
| DECIMAL 197 | | DECIMAL 197 |
| Set the input-output numeric conversion base to ten. | | 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: |
Строка 30: |
| {{заготовка}} | | {{заготовка}} |
| [[Категория:Слова Каллисто]] | | [[Категория:Слова Каллисто]] |
| [[Категория:Примитивы]]
| |
| [[Категория:Стандартные слова]]
| |
| [[Категория:1994 CORE]]
| |
| [[Категория:2012 CORE]]
| |