(rontolisp) docs
← cl パッケージの関数

integer-decode-float

(integer-decode-float float)

3 つの値を返します。整数としての仮数部、2 進の指数部、符号(1 または -1、整数 -- 浮動小数点数の符号を返すのは decode-float だけです)で、仮数部 * 2^指数部 * 符号 が元の数になります。仮数部はちょうど (float-digits 浮動小数点数) ビット幅に揃えられます -- 通常の倍精度数なら 53 ビット、非正規化数ならそれより少なくなります。0 は 0、0、その符号に分解されます。分解は 2 倍・1/2 倍のみで行われ、2 進浮動小数点数では誤差なく計算できるため、すべてのバックエンドがビット単位で同じ値を返します。仮数部を浮動小数点数で返す同じ分解は decode-float です。