U♯: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) |
AtH (обсуждение | вклад) (→Ссылки) |
||
Строка 75: | Строка 75: | ||
== Ссылки == | == Ссылки == | ||
* [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0030 Слово # (number-sign) в стандарте ANS Forth] ''(англ.)'' | * [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0030 Слово # (number-sign) в стандарте ANS Forth] ''(англ.)'' | ||
* Слово [http:// | * Слово [http://forth-standard.org/standard/core/num # (number-sign)] в черновике 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://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/sf7/sf7.html A Number of Kinds of Numbers] в книге [http://www.forth.com/starting-forth/ Leo Brodie Starting Forth] ''(англ.)'' |
Версия от 11:12, 29 марта 2016
U# — стандартное слово Каллисто.
Преобразует одну цифру целого числа и записывает её в выходной буфер PAD
Ввод слова U#
В режиме ЛАТ последовательно нажмите клавиши 3 P F 3
Эти нажатия оставляют клавиатуру в режиме NUM.
# в стандарте ANS Forth
6.1.0030 # "number-sign" CORE ( ud1 -- ud2 ) Делит ud1 числом в BASE, дает частное ud2 и остаток n. (n - младший разряд ud1.) Преобразовывает n к внешней форме и добавляет результирующий символ к началу выходной строки отображаемого числа. Неопределенная ситуация существует если # выполняется вне <# #> ограничивающих преобразование числа. См.: 6.1.0040 #>, 6.1.0050 #S, 6.1.0490 <#.
# в предыдущем стандарте Forth-83 (англ.)
# +d1 -- +d2 79 "sharp" The remainder of +d1 divided by the value of BASE is converted to an ASCII character and appended to the output string toward lower memory addresses. +d2 is the quotient and is maintained for further processing. Typically used between <# and #> .
# в стандарте Forth-79 (англ.)
# ud1 -- ud2 158 "sharp" Generate from an unsigned double number d1, the next ASCII character which is placed in an output string. Result d2 is the quotient after division by BASE is maintained for further processing. Used between <# and #> .
# в fig-FORTH Release 1 glossary, май 1979 (англ.)
# d1 --- d2 L0 Generate from a double number d1, the next ascii character which is placed in an output string. Result d2 is the quotient after division by BASE, and is maintained for further processing. Used between <# and #>. See #S.
Реализация
Юрий Семёнов приводит следующее определение слова U# (стр. 100):
: U# BASE @ /MOD ROT 9 OVER < IF 7 + THEN '0' + HOLD ;
В ядре ФОРТ-ЕС слово U# работало с числовой парой и называлось #
Вот его описание и определение:
# D1->D2 ДЕЛЕНИЕМ D1 НА ЗНАЧЕНИЕ "BASE" 37 ВЫДЕЛИТЬ 1 ЦИФРУ С КОНЦА И ДОБАВИТЬ ЕЕ В БУФЕР "PAD", ОСТАВИВ ЧАСТНОЕ D2 Экран номер 37 ( 31.03.86 PAD HOLD ALPHA <# #> # #S SIGN ) CODE ALPHA ( N->C) RW2 FIRST LH, RW1 RW1 SR, RW1 1 =F (, RW2 IC, PUTRW1 B, 1 =H C, ' 01234S478<?ABCDEFGHIJKLMNOPQRSTUVWXYZ' END-CODE : # ( D1->D2) BASE @ M/MOD ROT ALPHA HOLD ;
В FORTH ИТЭФ слово U# работало с числовой парой и называлось #
Вот его определение:
HEAD 201Q,,243Q,DIG,$COL ; # DW BASE,AT,MSMOD,ROT,LIT,11Q,OVER,LESS DW ZBRAN,DIGI-$,LIT,7,PLUS DIGI: DW LIT,60Q,PLUS,HOLD,SEMI
Ссылки
- Слово # (number-sign) в стандарте ANS Forth (англ.)
- Слово # (number-sign) в черновике Forth 200x (англ.)
- ЧИСЛО ТИПОВ ЧИСЕЛ в книге Л.Броуди «Начальный курс программирования на языке Форт»
- A Number of Kinds of Numbers в книге Leo Brodie Starting Forth (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |