Main Content

除算処理

C プログラミング言語は、固定小数点データ型にのみ整数除算へのアクセスを提供します。分子のサイズによっては、整数除算の前にシフトを実行して小数部のビットをいくつか取得できます。

2 つの数値を除算するとします。これらの各数値は 8 ビット ワードで表され、それぞれに 2-4 の 2 進数のみのスケーリングがあります。また、出力は 2 進小数点のみのスケーリングが 2-4 の 8 ビット ワードに制限されます。

次のモデルで 9.1875 を 1.5000 で割る除算を示します。

次の例では、

Qa=24(4)(4)(Qb/Qc)=24(Qb/Qc).

大きいデータ型を使用できると仮定すると、これは次のように実装できます。

Qa=(24Qb)Qc,

ここでは分子が大きいデータ型を使用しています。大きいデータ型を使用できない場合は、整数除算を減算 4 回の繰り返しと組み合わせて使用します。どちらの方法でも結果は同じですが、前者の方が効率的です。