数え上げ符号
数え上げ符号(かぞえあげふごう)は、符号化方式の1つ。次の手順で符号化を行う。
符号化の対象(情報系列)の1情報ブロック中にある "1" の個数(ハミング重み)を数える。
"1" の個数と情報ブロックの長さを定めると 0と 1 の組み合わせも限られるので、0 と 1 の組み合わせを列挙し、情報ブロックが何番目の組み合わせと一致するかを数える。
"1" の個数を2進数表現したものと、何番目のバイナリ系列と一致したかを数え、2進数表現したものを組み合わせて符号語とする。
下記の例のように符号化後の方がより多くのビットを使用する場合もある。この例では圧縮としての符号化を目的としたものではない。この符号化方式をナップサック暗号に組み合せると、よく知られた攻撃法を回避できるという提案もある。