圧縮を目的とした数値表現
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/11/26 08:13 UTC 版)
「可変長数値表現」の記事における「圧縮を目的とした数値表現」の解説
数値を取り扱う際に、任意桁の数をコンパクトに表現する為の手段として可変長数値表現を使う場合がある。その実装のひとつして、Standard MIDI Fileにおける数値表現があげられる。MIDIでは使われる数値の多くが0 - 127の間にある値、すなわち7ビットでほとんどを賄うことができる。しかし、ノート長など大きな値が必要な場合には、7ビット以上の値が必要となる。そこで1オクテットのうち最上位ビットを1にした場合、続く1オクテットが値の一部となることを示すようにする。最後のオクテットで最上位ビットを0とし、可変長数値表現の区切り文字の役割を持たせる。 0 - 127 0x00 - 0x7fで表現される 128 - 16383 0x81:0x00 - 0xff:0x7fで表現される 16384 - 2097151 0x81:0x80:0x00 - 0xff:0xff:0x7fで表現される 2097152 - 268435455 0x81:0x80:0x80:0x00 - 0xff:0xff:0xff:0x7fで表現される。 このような可変長数値表現はコンパクト符号の一種でもある。このような実装は他にも、16・32bit固定長のUNICODEを可変長の1〜6バイトの数列にしたUTF-8等がある。
※この「圧縮を目的とした数値表現」の解説は、「可変長数値表現」の解説の一部です。
「圧縮を目的とした数値表現」を含む「可変長数値表現」の記事については、「可変長数値表現」の概要を参照ください。
- 圧縮を目的とした数値表現のページへのリンク