Normal number (computing): Difference between revisions

Content deleted Content added
m disambig digit
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
 
(28 intermediate revisions by 21 users not shown)
Line 1:
:''A different topic is treated in {{for|the article titledmathematical [[meaning|normal number]].''}}
{{refimprove|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.
 
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.
 
Similarly, theThe magnitude of the largest'''smallest normal number''' in a format is given by:
 
<math display="block">b^{E_{\text{min}}}</math>
:''b''<sup>''emax''</sup> &times; (''b'' &minus; ''b''<sup>1&minus;''p''</sup>),
 
where ''pb'' is the precisionbase (radix) of the format in(like [[numericalcommon digit|digit]]svalues 2 or 10, for binary and ''emax''decimal isnumber systems), and (&minus;''emin<math display="inline">E_{\text{min}}</math>'')+1 depends on the size and layout of the format.
 
Similarly, the magnitude of the '''largest normal number''' in a format is given by
In the [[IEEE 754]] binary and proposed decimal formats, ''p'', ''emin'', and ''emax'' have the following values:
<table cellpadding=8><tr><td><table cellpadding=4 border=1>
<tr valign=top>
<td><b>Format</b>
</td><td><b><i>p</i></b>
</td><td><b><i>emin</i></b>
</td><td><b><i>emax</i></b>
</tr><tr valign=top>
</td><td>binary 32-bit
</td><td>24
</td><td>&minus;126
</td><td>127
</tr><tr valign=top>
</td><td>binary 64-bit
</td><td>53
</td><td>&minus;1022
</td><td>1023
</tr><tr valign=top>
</td><td>binary 128-bit
</td><td>113
</td><td>&minus;16382
</td><td>16383
</tr><tr valign=top>
</td><td>decimal 32-bit
</td><td>7
</td><td>&minus;95
</td><td>96
</tr><tr valign=top>
</td><td>decimal 64-bit
</td><td>16
</td><td>&minus;383
</td><td>384
</tr><tr valign=top>
</td><td>decimal 128-bit
</td><td>34
</td><td>&minus;6143
</td><td>6144
</table></td></tr></table>
 
:<math display="block">b^{E_{\text{max}}}\cdot\left(b - b^{1-p}\right)</math>
For example, in the smallest decimal format, the range of positive normal numbers is 10<sup>&minus;95</sup> through 9.999999 &times; 10<sup>96</sup>.
 
where ''p'' is the precision of the format in [[numerical digit|digit]]s and ''<math display="inline">E_{\text{min}}</math>'' is related to ''<math display="inline">E_{\text{max}}</math>'' as:
Non-zero numbers smaller in magnitude than the smallest normal number are called [[denormal|denormalized numbers]] or [[denormal|subnormal numbers]]. Zero is neither normal nor subnormal.
 
<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, ''b'', ''p'', <math display="inline">E_{\text{min}}</math>, and ''<math display="inline">E_{\text{max}}</math>'' have the following values:<ref>{{Citation
| title = IEEE Standard for Floating-Point Arithmetic
| date = 2008-08-29
| doi =10.1109/IEEESTD.2008.4610935
| isbn = 978-0-7381-5752-8
}}</ref>
{| class="wikitable" style="text-align: right;" |
|+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 × 10<sup>96</sup>.
 
Non-zero numbers smaller in magnitude than the smallest normal number are called [[subnormal number|'''subnormal''']] '''numbers''' (or ''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)}}
[[Category:Computer arithmetic]]