BASE
BASE (основание) — стандартная переменная Каллисто.
BASE ( −− a ) Переменная, основание системы счисления для ввода−вывода чисел.
Слово BASE кладёт на стек адрес ячейки, содержащей текущее основание системы счисления для преобразования чисел (от 2 до 36).
Ввод слова BASE[править]
В режиме ЛАТ последовательно нажмите четыре клавиши В/О ШГ← 1 ИП
BASE в стандарте ANS Forth[править]
6.1.0750 BASE CORE ( -- a-addr ) a-addr - адрес ячейки, содержащей текущее основание системы счисления для преобразования чисел {2...36}.
История[править]
В 1968 году Чак Мур работал в Mohasco Industries, Inc (Amsterdam NY, англ.). Первая версия интерпретатора, получившая название FORTH, заработала на миникомпьютере IBM 1130 с графическим дисплеем 2250 (16-битный процессор с ОЗУ 8К, дисководом, клавиатурой, принтером и ридером/панчером перфокарт). Первый FORTH знал слово BASE
Слово BASE позволяло использовать восьмеричные и шестнадцатеричные числа наряду с десятичными.
Устоявшееся слово BASE присутствует в ядре всех стандартов (англ. CORE) со времён fig-Форта до готовящегося стандарта Форт-2012. Хотя для хранения основания системы счисления достаточно одного байта, Каллисто идёт навстречу стандарту и отводит на эту переменную целую ячейку.
BASE в предыдущем стандарте Forth-83 (англ.)[править]
BASE -- addr U,83 The address of a variable containing the current numeric conversion radix. {2..72}
BASE в стандарте Forth-79 (англ.)[править]
BASE -- addr U,115 Leave the address of a variable containing the current input- output numeric conversion base. {2..70}
BASE в fig-FORTH Release 1 glossary, май 1979 (англ.)[править]
BASE --- addr U,L0 A user variable containing the current number base used for input and output conversion.
Реализация[править]
99 rrBASE .EQU 1110 ; 11110 BASE − основание действующей системы счисления 100 pBASE .EQU 110 101 rlBASE .EQU 1111 … 2865 ;#BASE 2866 ; BASE ( −− a ) Переменная, основание системы счисления для ввода−вывода чисел. 2867 LBASE: .DB 4 2868 .TEXT "BASE" 2869 .DW LSTATE 2870 BASE: .DW SUSE 2871 .DB pBASE
Реализация из SP-Forth 4.20:
USER BASE ( -- a-addr ) \ 94 \ a-addr - адрес ячейки, содержащей текущее основание системы счисления (2..36).
Советская реализация[править]
Описание и определение переменной BASE в ядре ФОРТ-ЕС:
BASE П->А ПЕРЕМЕННАЯ - ТЕКУЩЕЕ ОСНОВАНИЕ СИСТЕМЫ 8 СЧИСЛЕНИЯ ПРИ ВВОДЕ-ВЫВОДЕ ЧИСЕЛ Экран номер 8 ( 09.09.86 СИСТЕМНЫЕ ПЕРЕМЕННЫЕ - ОКОНЧАНИЕ) VARIABLE BASE ( ОСНОВАНИЕ СИСТЕМЫ СЧИСЛЕНИЯ)
Определение переменной BASE в FORTH ИТЭФ:
HEAD 204Q,'BAS',305Q,BASE,$USE ; BASE DW 56Q
Ссылки[править]
- Исходный текст слова BASE в Каллисто Классик 1.0
- См. слова DECIMAL, HEX, NUMBER, UCONVERT, DIGIT, I.
- См. также статьи про десятичную, шестнадцатеричную и двоичную системы счисления
- Позиционная система счисления на Википедии
- Слово BASE в стандарте ANS Forth (англ.)
- Слово BASE в черновике Forth 200x (англ.)
- Variables, Constants, and Arrays в книге Leo Brodie Starting Forth (англ.)
- Under the Hood в книге Leo Brodie Starting Forth (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |