迷你浮點（minifloats）是用少位元浮點數值。不太適合通用數值計算。通常用於特殊目的，像電腦圖形學，迭代很小並且精度具有美學效果。機器學習也使用類似格式，如 bfloat16。 Minifloats 按照 IEEE 754 標準設計。必須遵守次正規數和正規數之間邊界規則（未明確寫入的），且具無限大和 NaN 特殊模式。標準化數字以有偏差的指數儲存。該標準的新修訂版 IEEE 7542008 具有 16 位元二進位小型浮點數。 符號 迷你浮點通常使用四個數字的元組（S、E、M、B）來描述： S 是符號欄位的長度。通常為 0 或 1。 E 是指數欄位的長度。 M 是尾數（有效數字）欄位的長度。 B 是指數偏差。 因此，以 S E M B 表示的小型浮點格式為 S E M 位元。 S E M B 表示法可以轉換為 B P L U 格式，如 2 M 1 B 1 2 S B IEEE 指數）。 例子 8 位元 minifloat 範例 143 符號 指數 指數 指數 指數 有效數 有效數 有效數 0 0 0 0 0 0 0 0 具有 1 個符號位元、4 個指數位元和 3 個有效位元 IEEE halfprecision has 5 exponent bits with bias 15 25 1 1 15 IEEE singleprecision has 8 exponent bits with bias 127 28 1 1 127 IEEE doubleprecision has 11 exponent bits with bias 1023 211 1 1 1023 and IEEE quadrupleprecision has 15 exponent bits with bias 16383 215 1 1 16383 See the Exponent bias article for more detail 對於大多數值指數 x 是。所有 IEEE 754 原則都應該有效。 零的表示 0 0000 000 0 1 0000 000 0 次正規數 有效數用 0 擴充套件： 0 0000 001 00012 21 7 0125 26 0001953125 最小次正規數 0 0000 111 01112 21 7 0875 26 0013671875 最大次正規數 標準化數字 有效數用 1 擴充套件： 0 0001 000 10002 21 7 1 26 0015625 least normalized number 0 0001 001 10012 21 7 1125 26 0017578125 0 0111 000 10002 27 7 1 20 1 0 0111 001 10012 27 7 1125 20 1125 最小值大於 1 0 1110 000 10002 214 7 1000 27 128 0 1110 001 10012 214 7 1125 27 144 0 1110 110 11102 214 7 1750 27 224 0 1110 111 11112 214 7 1875 27 240 最大標準數 無窮 0 1111 000 1 1111 000 非數 s 1111 mmm NaN if mmm 000 數值表 這是此範例 8 位元浮點的所有可能值的圖表。 000 001 010 011 100 101 110 111 0 0000 0 0001953125 000390625 0005859375 00078125 0009765625 001171875 0013671875 0 0001 0015625 0017578125 001953125 0021484375 00234375 0025390625 002734375 0029296875 0 0010 003125 003515625 00390625 004296875 0046875 005078125 00546875 005859375 0 0011 00625 00703125 0078125 00859375 009375 01015625 0109375 01171875 0 0100 0125 0140625 015625 0171875 01875 0203125 021875 0234375 0 0101 025 028125 03125 034375 0375 040625 04375 046875 0 0110 05 05625 0625 06875 075 08125 0875 09375 0 0111 1 1125 125 1375 15 1625 175 1875 0 1000 2 225 25 275 3 325 35 375 0 1001 4 45 5 55 6 65 7 75 0 1010 8 9 10 11 12 13 14 15 0 1011 16 18 20 22 24 26 28 30 0 1100 32 36 40 44 48 52 56 60 0 1101 64 72 80 88 96 104 112 120 0 1110 128 144 160 176 192 208 224 240 0 1111 NaN NaN NaN NaN NaN NaN NaN 1 0000 0 0001953125 000390625 0005859375 00078125 0009765625 001171875 0013671875 1 0001 0015625 0017578125 001953125 0021484375 00234375 0025390625 002734375 0029296875 1 0010 003125 003515625 00390625 004296875 0046875 005078125 00546875 005859375 1 0011 00625 00703125 0078125 00859375 009375 01015625 0109375 01171875 1 0100 0125 0140625 015625 0171875 01875 0203125 021875 0234375 1 0101 025 028125 03125 034375 0375 040625 04375 046875 1 0110 05 05625 0625 06875 075 08125 0875 09375 1 0111 1 1125 125 1375 15 1625 175 1875 1 1000 2 225 25 275 3 325 35 375 1 1001 4 45 5 55 6 65 7 75 1 1010 8 9 10 11 12 13 14 15 1 1011 16 18 20 22 24 26 28 30 1 1100 32 36 40 44 48 52 56 60 1 1101 64 72 80 88 96 104 112 120 1 1110 128 144 160 176 192 208 224 240 1 1111 NaN NaN NaN NaN NaN NaN NaN 只有 242 個不同的非 NaN 值（如果 0 和 0 視為不同），因為 14 個位元模式代表 NaN。 可以使用指令碼為 SEMB 值的任意組合產生如上所述的表格 Python 或 GDScript 其它偏差值 在這些小尺寸下，其它偏差值可能會很有趣，例如 2 的偏差將使數字 016 具有與整數 016 相同的位表示形式，但會導致無法表示非整數值。 0 0000 000 00002 21 2 00 23 0 subnormal number 0 0000 001 00012 21 2 0125 23 1 subnormal number 0 0000 111 01112 21 2 0875 23 7 subnormal number 0 0001 000 10002 21 2 1000 23 8 normalized number 0 0001 111 11112 21 2 1875 23 15 normalized number 0 0010 000 10002 22 2 1000 24 16 normalized number Arithmetic Addition 此圖示範了增加較小的 13236 位元迷你浮點。 此浮點系統完全遵循 IEEE 754 規則。 NaN 作為運算元始終產生 NaN 結果。 和 會產生 NaN（綠）。可以按有限值增減而不會發生變化。 有限運算元的和可以給出無限結果（即 140 30 ，因為結果是青，紅）。 算術運算可以類似地說明： imageMinifloatSubtraction_1_3_2_3_72png 減法 imageMinifloatMultiplication_1_3_2_3_72png 乘法 imageMinifloatDivision_1_3_2_3_72png 除法 Other sizes The Radeon R300 and R420 GPUs used an fp24 floatingpoint format with 7 bits of exponent and 16 bits 1 implicit of mantissa Full Precision in Direct3D 90 is a proprietary 24bit floatingpoint format Microsofts D3D9 Shader Model 20 graphics API initially supported both FP24 as in ATIs R300 chip and FP32 as in Nvidias NV30 chip as Full Precision as well as FP16 as Partial Precision for vertex and pixel shader calculations performed by the graphics hardware Khronos defines 10bit and 11bit float formats for use with Vulkan Both formats have no sign bit and a 5bit exponent The 10bit format has a 5bit mantissa and the 11bit format has a 6bit mantissa 4 bits and fewer The smallest possible float size that follows all IEEE principles including normalized numbers subnormal numbers signed zero signed infinity and multiple NaN values is a 4bit float with 1bit sign 2bit exponent and 1bit mantissa In the table below the columns have different values for the sign and mantissa bits and the rows are different values for the exponent bits 0 0 0 1 1 0 1 1 00 0 05 0 05 01 1 15 1 15 10 2 3 2 3 11 NaN NaN If normalized numbers are not required the size can be reduced to 3bit by reducing the exponent down to 1 0 0 0 1 1 0 1 1 0 0 1 0 1 1 NaN NaN In situations where the sign bit can be excluded each of the above examples can be reduced by 1 bit further keeping only the left half of the above tables A 2bit float with 1bit exponent and 1bit mantissa would only have 0 1 Inf NaN values If the mantissa is allowed to be 0bit a 1bit float format would have a 1bit exponent and the only two values would be 0 and Inf The exponent must be at least 1 bit or else it no longer makes sense as a float it would just be a signed number In embedded devices Minifloats are also commonly used in embedded devices especially on microcontrollers where floatingpoint will need to be emulated in software To speed up the computation the mantissa typically occupies exactly half of the bits so the register boundary automatically addresses the parts without shifting 參見 定點數運算 半精度浮點數 G711 ALaw 參考 外部連結 OpenGL half float pixel CategoryFloating point types Category 計算機算術