Content deleted Content added
\wowzeryest\ (talk | contribs) mNo edit summary |
cleaning up trivia; needs much checking and sourcing, as this article may be more extrapolation than sourced material |
||
Line 1:
{{Cleanup|date=April 2009}}
In [[computing]], '''octuple precision''' is a binary [[floating-point]]-based [[computer number format]] that occupies [[32]] [[byte]]s ([[256]] [[bit]]s or [[64]] [[nibble]]s) in computer memory. This [[256]]
▲In [[computing]], '''octuple precision''' is a binary [[floating-point]]-based [[computer number format]] that occupies [[32]] [[byte]]s ([[256]] [[bit]]s or [[64]] [[nibble]]s) in computer memory. This [[256]] [[bit]] octuple precision is for applications requiring results in higher than [[quadruple precision]]. Disclaimer: This format is rarely (if ever) used and very few things support it.
{{Floating-point}}
== IEEE 754 octuple-precision binary floating-point format:
The IEEE 754 standard specifies a '''binary256''' as having:{{dubious|reason=No references found. Some descriptions (e.g. [http://www.researchgate.net/publication/224087006_A_system_on_the_Web_for_octuple-precision_computation]) mention octuple precision with other sizes, such as a 15-bit exponent and 240-bit explicit mantissa|date=May 2015}}
* [[Sign bit]]: 1 bit
* [[Exponent]] width: 18 bits
Line 15 ⟶ 13:
<!-- "significand", with a d at the end, is a technical term, please do not confuse with "significant" -->
This gives from 33
The format is written with an implicit lead bit with value 1 unless the
[[File:Octuple persision visual demontration.png|1000px|Octuple
=== Exponent encoding ===
Line 43 ⟶ 41:
|}
The minimum strictly positive (subnormal) value is {{nowrap|2<sup>−16494</sup> ≈ 10<sup>−4965</sup>}} and has a precision of only one bit.
The minimum positive normal value is 2<sup>−16382</sup> ≈ 3.3621 × 10<sup>−4932</sup> and has a precision of 112 bits, i.e. ±2 <sup>−16494</sup> as well.
The maximum representable value is 2<sup>16384</sup>
=== Octuple-precision examples ===
Line 52 ⟶ 50:
of the floating-point value. This includes the sign, (biased) exponent, and significand.
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = +0
8000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 =
7fff 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 = +infinity
ffff 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 =
By default, 1/3 rounds down like [[double precision]], because of the odd number of bits in the significand.
Line 62 ⟶ 60:
==Implementations==
Octuple precision is rarely if ever implemented in to software since usage of it is extremely rare. One can use general [[arbitrary-precision arithmetic]] libraries to obtain octuple (or higher) precision, but specialized
===Computer-language support===
In C++, It is possible to make a library to handle
=== Hardware support ===
There is little to no hardware support for octuple
== See also ==
* [[IEEE 754-2008|IEEE Standard for Floating-Point Arithmetic (IEEE 754)]]
* [[Extended precision]] (80-bit)
* [[ISO/IEC 10967]], Language-independent
* [[Primitive data type]]
* [[long double]]
* [[
* [[Single-precision floating *
* [[Quadruple-precision floating-point format]]
* [[Octuple-precision floating-point format]]
== References ==
{{reflist
▲*The entire layout of this page is based off of [[Quadruple-precision floating-point format]]/
[[Category:Binary arithmetic]]
[[Category:Data types]]
<!--This page is a slightly modified copy of the https://en.wikipedia.org/wiki/Quadruple-precision_floating-point_format page. I do not believe this is
|