[X]
[X] (усечение) — стандартное слово Каллисто. Усечение числа.
( x -- x1 )
x1 — усечение x (англ. truncation). Значащие цифры, стоящие после десятичной запятой, отбрасываются. Знак числа не меняется.
Детали реализации
Слово является «обёрткой» вокруг команды ЭКВМ К[x].
Математическая операция взятия целой части даёт пол числа (англ. floor), то есть производит округление числа к отрицательной бесконечности. Её наиболее точное обозначение $\lfloor x \rfloor$. Для отрицательных чисел действие слова [X] отличается от $\lfloor x \rfloor$, т.к. [X] округляет число x к нулю.
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 плавающей точкой.
История
В Форте FSP88 это слово известно под именем INT
В черновике стандарта Форт-2012 это слово называется FTRUNC
Слово [X] повторяет особенности округления, характерные для советских калькуляторов «Электроника МК-61» и «Электроника МК-52».
Ссылки
- Целая часть на Википедии — определение не совпадает со словом [X] для отрицательных чисел
- Truncation на английской Википедии (англ.)
- Слово FTRUNC (f-trunc) в черновике Forth 200x (англ.)
- Слово FLOOR в стандарте ANS Forth (англ.)
- Слово FROUND (f-round) в стандарте ANS Forth (англ.)
- Слово FLOOR в черновике Forth 200x (англ.)
- Слово FROUND (f-round) в черновике Forth 200x (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |