Half precision

Half precision

In computing, half precision is a computer numbering format that occupies only half of one storage location (word) in computer memory at some address. A half-precision number may be defined to be a binary or decimal integer, fixed point, or floating point. For binary integers, they are sometimes called 'short'.

"Half-precision floating point" is a relatively new binary floating-point format that uses 2 bytes and which is not covered by the IEEE 754 standard for encoding floating point numbers (but is included in the IEEE 754r proposed revision).

This format is used in several computer graphics environments including OpenEXR, OpenGL, and D3DX. The advantage over 8-bit or 16-bit binary integers is that the increased dynamic range allows for more detail to be preserved in highlights and shadows. The advantage over 32-bit single precision binary formats is that it requires half the storage and bandwidth. [http://www.openexr.org/details.html]

Half precision memory format

Sign bit: 1 Exponent width: 5 Significand precision: 10 (11 implicit)

The format is assumed to have an implicit integer bit with value 1 unless the exponent field is all zeros. Only 10 bits of the fraction appear in the memory format. In IEEE 754 parlance, there are 10 bits of significand, but there are 11 bits of significand precision (approximately 3 decimal digits, log_{10}(2^{11}) approx 3.311).

syyy yyxx xxxx xxxx (10 xs)

Exponent encodings

Emin (0x01) = −14 Emax (0x1e) = 15 Exponent bias (0x0f) = 15The true exponent = written exponent − exponent bias

0x00 and 0x1f are reserved exponents 0x00 is used to represent zero and denormals 0x1f is used to represent infinity and NaNs

All bit patterns are valid encodings.

The minimum and maximum representable values are 2-24 = 5.96E-8 (denormalized) and 65504 respectively. The minimum non-denormalized value is 2-14 = 6.10E-5.

Half-precision examples in hexadecimal

3c00 = 1

c000 = -2

7bff = 65504 (Max Half precision) 3555 ~ 0.33325... ~ 1/3 (1/3 rounds down like double precision, because of the odd number of bits in the significand.)

0400 = 2-14 ~ 6.10352E-5 (Minimum normalized)

0001 = 2-24 ~ 5.96046E-8 (Minimum denormalized)

0000 = 0 8000 = -0

7c00 = Infinity fc00 = -Infinity

See also

* half precision – single precision – double precision – quadruple precision
* Floating point
* RGBE image format

External links

* [http://www.mrob.com/pub/math/floatformats.html#minifloat Minifloats] (in "Survey of Floating-Point Formats")
* [http://www.openexr.org/ OpenEXR site]
* [http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/directx9_c/directx/graphics/reference/d3dx/constants/OTHER_D3DX.asp Half precision constants] from D3DX (defunct page)
* [http://oss.sgi.com/projects/ogl-sample/registry/ARB/half_float_pixel.txt OpenGL treatment of half precision]
* [http://www.analog.com/Analog_Root/static/library/dspManuals/pdf/ADSP-21065L/65L_tr_numeric_ref.pdf Analog devices variant] (four-bit exponent) (defunct page)


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Half-Life (jeu vidéo) — Half Life Pour les articles homonymes, voir HL et Halflife. Half Life …   Wikipédia en Français

  • Half-Life 1 — Half Life Pour les articles homonymes, voir HL et Halflife. Half Life …   Wikipédia en Français

  • Half-Life Generation — Half Life Pour les articles homonymes, voir HL et Halflife. Half Life …   Wikipédia en Français

  • Half-life — Pour les articles homonymes, voir HL et Halflife. Half Life …   Wikipédia en Français

  • Half Life — Pour les articles homonymes, voir HL et Halflife. Half Life …   Wikipédia en Français

  • Half life — Pour les articles homonymes, voir HL et Halflife. Half Life …   Wikipédia en Français

  • Precision bombing — is the desired skill of being able to bomb single buildings in a built up area, without causing any damage to the surrounding buildings, or the ability to place a bomb by air to within extremely accurate limits. Precision bombing was used by both …   Wikipedia

  • Half-Life 2 — Desarrolladora(s) Valve Electronic Arts (PS3) Distribuidora(s) Electronic Arts Diseñador(es) Valve Motor …   Wikipedia Español

  • Half-Life: Opposing Force — Half Life Opposing Force Éditeur Sierra Entertainment Développeur Gearbox Software Distributeur Sierra Entertainment Steam Concepteur Randy Pitchford Date de sortie …   Wikipédia en Français

  • Half-life: opposing force — Half Life Opposing Force Éditeur Sierra Studios (expiré) Valve Développeur …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”