6536 байт добавлено
, 1 год назад
'''Число́ восьмерно́й то́чности''' ({{lang-en|Octuple precision}}) — [[компьютер]]ный формат представления чисел с плавающей запятой, занимающий в памяти восемь последовательных двойных слов, т.е. 32 [[байт|байта]]. Данное название обусловлено сложившейся терминологией, в которой число одинарной точности имеет размер двойного слова. Как правило, обозначает формат [[числа с плавающей запятой]] '''binary256''' стандарта [[IEEE 754]].
== Формат числа восьмерной точности ==
Знак: 1 бит.<br />Порядок: 19 бит<ref name="ncg_math">{{Cite web |url=http://docs.oracle.com/cd/E19957-01/806-3568/ncg_math.html |title=IEEE Arithmetic<!-- Заголовок добавлен ботом --> |access-date=2020-03-17 |archive-date=2020-06-19 |archive-url=https://web.archive.org/web/20200619223223/https://docs.oracle.com/cd/E19957-01/806-3568/ncg_math.html |url-status=live }}</ref>; смещение порядка: +262143 (3FFFFh).<br />[[Экспоненциальная_запись|Мантисса]]: 237 бит (236 явно хранятся).
Эквивалентное количество значащих десятичных цифр (при одинаковой средней относительной погрешности представления): 71,7<ref>{{Статья |автор=Гаврилов К. В. |заглавие=Об аппроксимации некоторых трансцендентных функций в компьютерной арифметике. |издание=Автоматика и программная инженерия |год=2020 |том=3 |страницы=51–59 |ссылка=http://journal.nips.ru/sites/default/files/AaSI-3-2020-6.pdf |archivedate=2021-06-08 |archiveurl=https://web.archive.org/web/20210608095101/http://journal.nips.ru/sites/default/files/AaSI-3-2020-6.pdf }}</ref>.
== Примеры чисел восьмерной точности ==
Некоторые [[константы]]:<ref name="ncg_math"/>
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000<sub>16</sub> = +0
8000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000<sub>16</sub> = −0
7fff f000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000<sub>16</sub> = +[[Бесконечность#В_математике|∞]]
ffff f000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000<sub>16</sub> = −∞
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001<sub>16</sub>
= 2<sup>−262142</sup> × 2<sup>−236</sup> = 2<sup>−262378</sup>
≈ 2.24800708647703657297018614776265182597360918266100276294348974547709294462 × 10<sup>−78984</sup>
(наименьшее положительное [[субнормальное число]])
0000 0fff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff<sub>16</sub>
= 2<sup>−262142</sup> × (1 − 2<sup>−236</sup>)
≈ 2.4824279514643497882993282229138717236776877060796468692709532979137875392 × 10<sup>-78913</sup>
(наибольшее субнормальное число)
0000 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000<sub>16</sub>
= 2<sup>−262142</sup>
≈ 2.48242795146434978829932822291387172367768770607964686927095329791378756168 × 10<sup>−78913</sup>
(наименьшее положительное [[нормальное число]])
7fff efff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff<sub>16</sub>
= 2<sup>262143</sup> × (2 − 2<sup>−236</sup>)
≈ 1.61132571748576047361957211845200501064402387454966951747637125049607182699 × 10<sup>78913</sup>
(наибольшее нормальное число)
3fff efff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff ffff<sub>16</sub>
= 1 − 2<sup>−237</sup>
≈ 0.999999999999999999999999999999999999999999999999999999999999999999999995472
(наибольшее число меньше единицы)
3fff f000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000<sub>16</sub>
= 1 (единица)
3fff f000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001<sub>16</sub>
= 1 + 2<sup>−236</sup>
≈ 1.00000000000000000000000000000000000000000000000000000000000000000000000906
(наименьшее число больше единицы)
== Поддержка ==
Использование восьмерной точности на данный момент весьма редкое. В компании [[Apple]] реализовали [[сложение]], [[вычитание]] и [[умножение]] чисел с восьмерной точностью в отличном от IEEE 754 формате: он имеет 224-битную мантиссу в [[дополнительный код|дополнительном коде]] и 32-битный [[Возведение в степень|показатель степени]].<ref>{{Статья |ссылка=http://images.apple.com/ca/acg/pdf/oct3a.pdf |заглавие=Octuple-precision floating point on Apple G4 (archived copy on web.archive.org) |автор=R. Crandall, J. Papadopoulos |год=2002 |archivedate=2006-07-28 |archiveurl=https://web.archive.org/web/20060728140052/http://images.apple.com/ca/acg/pdf/oct3a.pdf }}</ref> Можно использовать общие арифметические библиотеки с произвольной точностью для получения восьмерной (или более высокой) точности, но ещё не существует известной аппаратной реализации таковой.
== См. также ==
* [[Числа с плавающей запятой]]
* [[Число половинной точности]]
* [[Число одинарной точности]]
* [[Число двойной точности]]
* [[Число четверной точности]]
* [[256 бит]]
* [[Интервальная арифметика]]
* [[Длинная арифметика]]
== Примечания ==
{{примечания}}