[X]: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Строка 5: Строка 5:
== Ввод слова [X] ==
== Ввод слова [X] ==
В [[Режим NUM|режиме NUM]] последовательно нажмите клавиши [[Клавиша БП|{{Чёрная клавиша|БП}}]]   [[Клавиша Р-ГРД-Г|{{Чёрная клавиша|Р-ГРД-Г}}]] [[Клавиша 0|{{Серая клавиша|0}}]]   [[Клавиша P|{{Синяя клавиша|P}}]] [[Клавиша ПП|{{Чёрная клавиша|ПП}}]]
В [[Режим NUM|режиме NUM]] последовательно нажмите клавиши [[Клавиша БП|{{Чёрная клавиша|БП}}]]   [[Клавиша Р-ГРД-Г|{{Чёрная клавиша|Р-ГРД-Г}}]] [[Клавиша 0|{{Серая клавиша|0}}]]   [[Клавиша P|{{Синяя клавиша|P}}]] [[Клавиша ПП|{{Чёрная клавиша|ПП}}]]
== Детали реализации ==
Слово является «обёрткой» вокруг команды ЭКВМ [[K INT|К[x]]].
Математическая операция взятия целой части даёт пол числа (''англ.'' floor), то есть производит округление числа к отрицательной бесконечности. Её наиболее точное обозначение $\lfloor x \rfloor$. Для отрицательных чисел действие слова [X] отличается от $\lfloor x \rfloor$, т.к. [X] округляет число x к нулю.


== FLOOR в стандарте ANS Forth ==
== FLOOR в стандарте ANS Forth ==
Строка 33: Строка 28:


В [[Каллисто]] имя [X] восходит к надписи на клавиатуре советского ПМК [[Электроника МК-61|«Электроника МК-61»]], выпущенного в 1984 году.
В [[Каллисто]] имя [X] восходит к надписи на клавиатуре советского ПМК [[Электроника МК-61|«Электроника МК-61»]], выпущенного в 1984 году.
== Реализация ==
В [[Каллисто|Каллисто 1.0]] слово [X] является «обёрткой» вокруг команды ЭКВМ [[K INT|К[x]]]:
<pre>
1645 ;#FTRUNC
1646 ; [X]              ( x −− x1 )                          Усечение (целая часть) числа. x1 := Trunc [x]
1647 LINT:          .DB    3                      ; ( x −− [x] )
1648                .TEXT  "[X]"
1649                .DW    LSGN
1650 INT:            .DW    JINT
1651 JINT:          PKRM03 KINT PKM03  KGOTO9      ; Обёртка вокруг KINT.
</pre>
Математическая операция взятия целой части даёт пол числа (''англ.'' floor), то есть производит округление числа к отрицательной бесконечности. Её наиболее точное обозначение $\lfloor x \rfloor$. Для отрицательных чисел действие слова &#91;X&#93; отличается от $\lfloor x \rfloor$, т.к. &#91;X&#93; округляет число x к нулю.


== Ссылки ==
== Ссылки ==

Версия от 12:56, 9 ноября 2017

[X] (усечение) — традиционное слово Каллисто. Усечение числа.

[X]            ( x −− x1 )                          Усечение (целая часть) числа. x1 := Trunc [x]

x1 — усечение x (англ. truncation). Значащие цифры, стоящие после десятичной запятой, отбрасываются. Знак числа не меняется.

Ввод слова [X]

В режиме NUM последовательно нажмите клавиши  БП     Р-ГРД-Г   0     P   ПП 

FLOOR в стандарте ANS Forth

12.6.1.1558   FLOOR                                                    FLOATING
           ( F: r1 -- r2 ) or ( r1 -- r2 )
           Округление r1 к целому значению, использующему правило "округления 
           к отрицательной бесконечности", возвращает r2.

FROUND в стандарте ANS Forth

12.6.1.1612   FROUND                    "f-round"                      FLOATING
           ( F: r1 -- r2 ) or ( r1 -- r2 )
           Округляет r1 к целому значению, использующему правило "округления к 
           ближайшему", возвращает r2.
       См.: 12.3.2 Операции c плавающей точкой.

История

Слово [X] повторяет особенности округления, характерные для советских калькуляторов «Электроника МК-61» и «Электроника МК-52».

В Форте FSP88 слово [X] известно под именем INT

В черновике стандарта Форт-2012 слово [X] называется FTRUNC

В Каллисто имя [X] восходит к надписи на клавиатуре советского ПМК «Электроника МК-61», выпущенного в 1984 году.

Реализация

В Каллисто 1.0 слово [X] является «обёрткой» вокруг команды ЭКВМ К[x]:

1645 ;#FTRUNC
1646 ; [X]              ( x −− x1 )                          Усечение (целая часть) числа. x1 := Trunc [x]
1647 LINT:           .DB     3                       ; ( x −− [x] )
1648                 .TEXT   "[X]"
1649                 .DW     LSGN
1650 INT:            .DW     JINT
1651 JINT:           PKRM03 KINT PKM03  KGOTO9       ; Обёртка вокруг KINT.

Математическая операция взятия целой части даёт пол числа (англ. floor), то есть производит округление числа к отрицательной бесконечности. Её наиболее точное обозначение $\lfloor x \rfloor$. Для отрицательных чисел действие слова [X] отличается от $\lfloor x \rfloor$, т.к. [X] округляет число x к нулю.

Ссылки


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


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