Normal number (computing): Difference between revisions

Content deleted Content added
table can be found in the standards, the second column can be verified by the standard (also described in the paper)
Citation bot (talk | contribs)
Removed URL that duplicated identifier. Removed access-date with no URL. Removed parameters. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 922/990
 
(15 intermediate revisions by 11 users not shown)
Line 1:
{{for|the mathematical meaning|normal number}}
{{Unreferencedrefimprove|date=December 2009}}
 
{{Floating-point}}
 
In [[computing]], a '''normal number''' is a non-zero number in a [[floating point|floating-point representation]] which is within the balanced range supported by a given floating-point format: it is a floating point number that can be represented without leading zeros in its [[significand]].
 
The magnitude of the '''smallest normal number''' in a format is given by ''b''<sup>''emin''</sup>, where ''b'' is the base (radix) of the format (usually 2 or 10) and ''emin'' depends on the size and layout of the format.:
 
<math display="block">b^{E_{\text{min}}}</math>
Similarly, the magnitude of the largest normal number in a format is given by
 
where ''b'' is the base (radix) of the format (like common values 2 or 10, for binary and decimal number systems), and ''<math display="inline">E_{\text{min}}</math>'' depends on the size and layout of the format.
:''b''<sup>''emax''</sup> &times; (''b'' &minus; ''b''<sup>1&minus;''p''</sup>),
 
Similarly, the magnitude of the '''largest normal number''' in a format is given by
where ''p'' is the precision of the format in [[numerical digit|digit]]s and ''emax'' is (&minus;''emin'')+1.
 
:<math display="block">b^{E_{\text{max}}}\cdot\left(b - b^{1-p}\right)</math>
In the [[IEEE 754]] binary and decimal formats, ''p'', ''emin'', and ''emax'' have the following values:<ref>{{Citation
 
where ''p'' is the precision of the format in [[numerical digit|digit]]s and ''emax<math display="inline">E_{\text{min}}</math>'' is (&minus;related to ''emin<math display="inline">E_{\text{max}}</math>'')+1. as:
 
<math display="block">E_{\text{min}}\, \overset{\Delta}{\equiv}\, 1 - E_{\text{max}} = \left(-E_{\text{max}}\right) + 1</math>
 
In the [[IEEE 754]] binary and decimal formats, ''pb'', ''eminp'', <math display="inline">E_{\text{min}}</math>, and ''emax<math display="inline">E_{\text{max}}</math>'' have the following values:<ref>{{Citation
| title = IEEE Standard for Floating-Point Arithmetic
| date = 2008-08-29
| url = http://ieeexplore.ieee.org/servlet/opac?punumber=4610933
| doi =10.1109/IEEESTD.2008.4610935
| accessdateisbn = 2015978-040-26}}</ref>7381-5752-8
}}</ref>
{| class="wikitable" style="text-align: right;" |
!Format!!p!!emin!!emax
|+Smallest and Largest Normal Numbers for common numerical Formats
!Format!!<math>b</math>!!<math>p</math>!!<math>E_{\text{min}}</math>!!<math>E_{\text{max}}</math>
!Smallest Normal Number
!Largest Normal Number
|-
|[[Half-precision floating-point format|binary16]]||2||11||−14||15
|<math>2^{-14} \equiv 0.00006103515625</math>
|<math>2^{15}\cdot\left(2 - 2^{1-11}\right) \equiv 65504</math>
|-
|[[Single-precision floating-point format|binary32]]||2||24||−126||127
|<math>2^{-126} \equiv \frac{1}{2^{126}}</math>
|<math>2^{127}\cdot\left(2 - 2^{1-24}\right)</math>
|-
|[[Double-precision floating-point format|binary64]]||2||53||−1022||1023
|<math>2^{-1022} \equiv \frac{1}{2^{1022}}</math>
|<math>2^{1023}\cdot\left(2 - 2^{1-53}\right)</math>
|-
|binary128||2||113||−16382||16383
|<math>2^{-16382} \equiv \frac{1}{2^{16382}}</math>
|<math>2^{16383}\cdot\left(2 - 2^{1-113}\right)</math>
|-
|decimal32||10||7||−95||96
|<math>10^{-95} \equiv \frac{1}{10^{95}}
</math>
|<math>10^{96}\cdot\left(10 - 10^{1-7}\right) \equiv 9.999999 \cdot 10^{96}</math>
|-
|decimal64||10||16||−383||384
|<math>10^{-383} \equiv \frac{1}{10^{383}}
</math>
|<math>10^{384}\cdot\left(10 - 10^{1-16}\right)</math>
|-
|decimal128||10||34||−6143||6144
|<math>10^{-6143} \equiv \frac{1}{10^{6143}}
</math>
|<math>10^{6144}\cdot\left(10 - 10^{1-34}\right)</math>
|}
 
For example, in the smallest decimal format in the table (decimal32), the range of positive normal numbers is 10<sup>&minus;95</sup> through 9.999999 &times;× 10<sup>96</sup>.
 
Non-zero numbers smaller in magnitude than the smallest normal number are called [[denormalsubnormal number|'''subnormal''']] '''numbers''' (or subnormal)''denormal numbers'').

Zero is considered neither normal nor subnormal.
 
== See also ==
* [[Normalized number]]
* [[Half-precision floating-point format]]
* [[Single-precision floating-point format]]
* [[Double-precision floating-point format]]
 
== References ==
<references />
 
 
{{DEFAULTSORT:Normal Number (Computing)}}