p の値 |
意味 |
---|---|
single |
IEEE 単精度値に丸めます。 |
double |
IEEE 倍精度値に丸めます。 |
extended |
利用可能な最大の精度に丸めます。 |
p が single か double であれば、丸め精度モードは、プログラムの実行が始まるときに、それぞれ single か double 精度に設定されます。p が extended であるか、 -fprecision フラグが使用されていなければ、丸め精度モードは extended 精度のままです。
single 精度の丸めモードでは、結果が 24 ビットの有効桁に丸められます。double 精度の丸めモードでは、結果が 53 ビットの有効桁に丸められます。デフォルトの extended 精度の丸めモードでは、結果が 64 ビットの有効桁に丸められます。このモードは、レジスタにある結果をどの精度に丸めるかを制御するだけであり、レジスタの値には影響を与えません。レジスタにあるすべての結果は、拡張倍精度形式の全範囲を使って丸められます。ただし、メモリーに格納される結果は、指定した形式の範囲と精度に合わせて丸められます。
float 型の公称精度は single です。long double 型の公称精度は extended です。