: fixed-point number使--

10123112.321.23使22111101110: 1231111101.110: 61.5211110.1110: 30.752

特徴

編集

[1]

 (FPU) CPUFPU

102210[2]103310

Q表記(Qフォーマット)

編集

固定小数点数は、小数部分のビット数をQ表記(Qフォーマット)で表す。例えば、小数部分のビット数が12ビットである場合には、Q12表記もしくはQ12フォーマットと呼ばれる。

例えば、1.5をQ1表記で表現すると2進数表記では11である。この表記ではビット0とビット1の間に小数点がある。

注:(1*2^0)+(1*2^-1)=1.5

固定小数点演算

編集

LSBMSB

1.50.51.50.5Q121101Q111011001002.0Q1110111Q11.51.50.50.752Q111211Q2Q11


固定小数点数の精度

編集

固定小数点方式で有効桁数が十分にとれるのは、(符号ビットを除く)最上位桁が1の範囲内だけである。この時の相対誤差は桁数がn桁の時1/2nである。表現しようとする数が0に近づき上位桁が0で埋まる(ないし2の補数表現の負の数であれば1で埋まる)と、有効桁数はそれだけ減るので、その場合に必要な精度を満たしているか注意が必要である。

実数値と固定小数点数値の換算

編集

ある実数を x とし、これを固定小数点数で表した整数を n とする。最下位ビットを実数 L、オフセットを実数 O と定めると、実数 x は固定小数点数で次の数 n となる。ここで、round は四捨五入関数である。

 

固定小数点数 n から実数 x は次のように求まる。

 

出典

編集


(一)^   10 2004ISBN 4-434-04668-3 

(二)^  PostgreSQL 9.2.4201423

関連項目

編集