コンピュータの演算処理を容易にするために数値を格納する方法として知られているのが、剰余K表現(Excess-K Representation)です。ここで「K」は法(モジュラス)を表します。
剰余K表現の一般式
Kを基数とする任意の桁集合は、次のような剰余K表記で表すことができます。
$$D=d_n (K^n)+ d_{n-1} (K^{n-1}) +\cdots+ d_1 (K^1) + d_0(K^0)-K (k^0)$$
各記号の意味
- K:基数(ラディックス)または底
- n:桁数
- dn, …, d0:集合 {0, 1, 2, …, K−1} に属する各桁の数字
K=10の場合:「10進剰余表記(スティビッツ表記)」
K = 10 のときの剰余K表現は、10進剰余表記(decimal excess notation)と呼ばれ、また初期のリレー式計算機の開発者であるジョージ・スティビッツ(George Stibitz)にちなんでスティビッツ表記(Stibitz notation)とも呼ばれます。
補足:剰余K表現の実際の活用例
剰余K表現は「バイアス表現(biased representation)」とも呼ばれ、実際のコンピュータシステムでも広く使われています。代表的な例が、IEEE 754浮動小数点数における指数部の表現です。負の値を含みうる指数を、あらかじめバイアス値を加えた符号なし整数として格納することで、ハードウェア側で指数の大小比較や演算を簡単に行えるという利点があります。