[X]: различия между версиями
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) |
||
(не показаны 23 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
'''[X]''' (усечение) — | '''[X]''' (усечение) — традиционное слово [[Каллисто]]. Усечение числа. | ||
( x | [X] ( x −− x1 ) Усечение (целая часть) числа. x1 := Trunc [x] | ||
x1 — усечение x (''англ.'' truncation). Значащие цифры, стоящие после десятичной запятой, отбрасываются. Знак числа не меняется. | x1 — усечение x (''англ.'' truncation). Значащие цифры, стоящие после десятичной запятой, отбрасываются. Знак числа не меняется. | ||
== | == Ввод слова [X] == | ||
В [[Режим NUM|режиме NUM]] последовательно нажмите клавиши [[Клавиша БП|{{Чёрная клавиша|БП}}]] [[Клавиша Р-ГРД-Г|{{Чёрная клавиша|Р-ГРД-Г}}]] [[Клавиша 0|{{Серая клавиша|0}}]] [[Клавиша P|{{Синяя клавиша|P}}]] [[Клавиша ПП|{{Чёрная клавиша|ПП}}]] | |||
== FLOOR в стандарте ANS Forth == | == FLOOR в стандарте ANS Forth == | ||
Строка 24: | Строка 21: | ||
== История == | == История == | ||
Слово [X] повторяет особенности округления, характерные для советских калькуляторов [[«Электроника МК-61»]] и [[«Электроника МК-52»]]. | |||
В | В Форте FSP88 слово [X] известно под именем INT | ||
В черновике стандарта Форт-2012 слово [X] называется FTRUNC | |||
В [[Каллисто]] имя [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$. Для отрицательных чисел действие слова [X] отличается от $\lfloor x \rfloor$, т.к. [X] округляет число x к нулю. | |||
Реализация из SP-Forth 4.20: | |||
<pre> | |||
CODE FINT | |||
FRNDINT | |||
RET | |||
END-CODE | |||
</pre> | |||
== Ссылки == | == Ссылки == | ||
* {{Исходник|FTRUNC|[X]}} | |||
* См. слово [[⎨X⎬|{X}]] | |||
* [http://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BB%D0%B0%D1%8F_%D1%87%D0%B0%D1%81%D1%82%D1%8C Целая часть на Википедии] — определение не совпадает со словом [X] для отрицательных чисел | * [http://ru.wikipedia.org/wiki/%D0%A6%D0%B5%D0%BB%D0%B0%D1%8F_%D1%87%D0%B0%D1%81%D1%82%D1%8C Целая часть на Википедии] — определение не совпадает со словом [X] для отрицательных чисел | ||
* [https://en.wikipedia.org/wiki/Truncation Truncation на английской Википедии] ''(англ.)'' | * [https://en.wikipedia.org/wiki/Truncation Truncation на английской Википедии] ''(англ.)'' | ||
* [http:// | * Слово [http://forth-standard.org/standard/float/FTRUNC FTRUNC (f-trunc)] в черновике Forth 200x ''(англ.)'' | ||
* [http://forth.sourceforge.net/standard/dpans/dpans12.htm#12.6.1.1558 | * Слова [http://forth.sourceforge.net/standard/dpans/dpans12.htm#12.6.1.1558 FLOOR] и [http://forth.sourceforge.net/standard/dpans/dpans12.htm#12.6.1.1612 FROUND (f-round)] в стандарте ANS Forth ''(англ.)'' | ||
* Слова [http://forth-standard.org/standard/float/FLOOR FLOOR] и [http://forth-standard.org/standard/float/FROUND FROUND (f-round)] в черновике Forth 200x ''(англ.)'' | |||
* [http:// | |||
Строка 43: | Строка 63: | ||
{{заготовка}} | {{заготовка}} | ||
[[Категория:Слова Каллисто]] | [[Категория:Слова Каллисто]] | ||
[[Категория:Примитивы]] | |||
[[Категория:Математические функции Каллисто]] | [[Категория:Математические функции Каллисто]] | ||
[[Категория:Одноместные операции Каллисто]] | [[Категория:Одноместные операции Каллисто]] | ||
[[Категория: | [[Категория:Традиционные слова]] | ||
[[Категория:Адаптированные слова]] |
Текущая версия от 17:38, 10 ноября 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 к нулю.
Реализация из SP-Forth 4.20:
CODE FINT FRNDINT RET END-CODE
Ссылки[править]
- Исходный текст слова [X] в Каллисто Классик 1.0
- См. слово {X}
- Целая часть на Википедии — определение не совпадает со словом [X] для отрицательных чисел
- Truncation на английской Википедии (англ.)
- Слово FTRUNC (f-trunc) в черновике Forth 200x (англ.)
- Слова FLOOR и FROUND (f-round) в стандарте ANS Forth (англ.)
- Слова FLOOR и FROUND (f-round) в черновике Forth 200x (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |