Type SHORT-FLOAT, SINGLE-FLOAT, DOUBLE-FLOAT, LONG-FLOAT

UP


Type SHORT-FLOAT, SINGLE-FLOAT, DOUBLE-FLOAT, LONG-FLOAT

Type SHORT-FLOAT, SINGLE-FLOAT, DOUBLE-FLOAT, LONG-FLOAT

クラス優先順位リスト

short-float: short-float, float, real, number, t
single-float: single-float, float, real, number, t
double-float: double-float, float, real, number, t
long-float: long-float, float, real, number, t

定義

これら4つの型は、型floatのサブタイプとして定義され、 型short-floatと型long-floatの中間が 型single-floatと型double-floatになります。 これらの分類の精度の定義は実装定義です。 精度(「ビット」として計測されp log 2bとして計算されます)と 指数のサイズ(また「ビット」として計測され log 2(n+1)、ただしnは指数値の最大値として計算されます)は、 少なくとも次の表に示される値より大きいことが推奨されます。 型floatのサブタイプとして定義されたそれぞれは、 マイナスゼロがあっても無くてもかまいません。

フォーマット 最小精度 最小指数サイズ
short 13 bit 5 bit
single 24 bit 8 bit
double 50 bit 8 bit
long 50 bit 8 bit

Figure 12-12. 推奨される最小の浮動小数の精度と指数サイズ

浮動小数の内部表現は4つより少なくすることができます。 もし表現の区別が少ないときは、 下記の規則を適用してください。

型指定子の種類

省略可能

型指定子の構文

short-float [ short-lower-limit [ short-upper-limit ] ]
single-float [ single-lower-limit [ single-upper-limit ] ]
double-float [ double-lower-limit [ double-upper-limit ] ]
long-float [ long-lower-limit [ long-upper-limit ] ]

型指定子の引数

short-lower-limit, short-upper-limit - 型short-floatの区間指定子。 short-lower-limitshort-upper-limitの それぞれのデフォルト値はシンボル*

single-lower-limit, single-upper-limit - 型single-floatの区間指定子。 single-lower-limitsingle-upper-limitの それぞれのデフォルト値はシンボル*

double-lower-limit, double-upper-limit - 型double-floatの区間指定子。 double-lower-limitdouble-upper-limitの それぞれのデフォルト値はシンボル*

long-lower-limit, long-upper-limit - 型long-floatの区間指定子。 long-lower-limitlong-upper-limitの それぞれのデフォルト値はシンボル*

型指定子の定義

それぞれは、指定された型の浮動小数の集合は 区間指定子によって 区間を定義していることを意味しています。


TOP, Github