Kódování DPD

Z Wikipedie, otevřené encyklopedie

Kódování DPD (Densely packed decimal) je efektivní metodou pro binární kódování desítkových číslic.

Tradičně se pro kódování desítkových číslic používá kódování BCD (binary-coded decimal), které používá pro zakódování jedné desítkové číslice čtyři bity. Kódování BCD využívá asi 83 procent paměti, zatímco kódování DPD využívá přes 99.6 procent paměti.

Kódování DPD se vylepšuje kódování Chen–Ho; je stejně úsporné z hlediska paměti, ale má některé výhodnější vlastnosti. Například je vhodnější když počet číslic není dělitelný třemi.

Densely packed decimal encoding rules[1]
Hodnota ve formátu DPD Desítkové číslice
Kódový prostor

(1024 hodnot)

b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 d2 d1 d0 Hodnoty číslic Popis Statistika (z 1000 hodnot)
50.0% (512 hodnot) a b c d e f 0 g h i 0abc 0def 0ghi (0–7) (0–7) (0–7) Tři nízké číslice 51.2% (512 hodnot)
37.5% (384 hodnot) a b c d e f 1 0 0 i 0abc 0def 100i (0–7) (0–7) (8–9) Dvě nízké číslice, jedna vysoká 38.4% (384 hodnot)
a b c g h f 1 0 1 i 0abc 100f 0ghi (0–7) (8–9) (0–7)
g h c d e f 1 1 0 i 100c 0def 0ghi (8–9) (0–7) (0–7)
9.375% (96 hodnot) g h c 0 0 f 1 1 1 i 100c 100f 0ghi (8–9) (8–9) (0–7) Jedna nízká číslice, dvě vysoké 9.6% (96 hodnot)
d e c 0 1 f 1 1 1 i 100c 0def 100i (8–9) (0–7) (8–9)
a b c 1 0 f 1 1 1 i 0abc 100f 100i (0–7) (8–9) (8–9)
3.125% (32 hodnot, využito 8) x x c 1 1 f 1 1 1 i 100c 100f 100i (8–9) (8–9) (8–9) Tři vysoké číslice, bity b9 a b8 jsou nevyužité 0.8% (8 hodnot)

Reference[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku Densely packed decimal na anglické Wikipedii.

  1. COWLISHAW, Michael Frederic. A Summary of Densely Packed Decimal encoding [online]. IBM, 2007-02-13 [cit. 2016-02-07]. Dostupné v archivu pořízeném z originálu dne 2015-09-24.