インテル® Fortran コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

論理データの表現

論理データは 1、2、4、または 8 バイトです。

LOGICAL データ宣言に使用される基本データの大きさは、LOGICAL(4) (LOGICAL(KIND=4) と同じ) です。ただし、コンパイラー・オプションを指定してこのデフォルトをオーバーライドできます。integer-size 16 オプションを使用して LOGICAL(2) を指定したり、integer-size 64 オプションを使用して LOGICAL(8) を指定できます。

インテル® 64 アーキテクチャー・ベースのシステム向けにパフォーマンスを向上させるには、LOGICAL(2) または LOGICAL(1) ではなく、LOGICAL(4) (または LOGICAL(8)) を使用してください。IA-32 アーキテクチャー・ベースのシステムには、LOGICAL(8)、LOGICAL(2)、LOGICAL(1) ではなく、LOGICAL(4) を使用してください。

LOGICAL(KIND=1) の値は、1 バイトで格納されます。LOGICAL(1) データは、論理値 .TRUE. と .FALSE. の他にも、-128 ~ 127 の範囲の値を持つことができます。また、論理変数は整数データとして解釈することもできます。

LOGICAL(1) に加えて、論理値は任意のバイト境界から始まる連続する 2 バイト (LOGICAL(2))、4 バイト (LOGICAL(4))、または 8 バイト (LOGICAL(8)) に格納することもできます。

fpscomp nological コンパイラー・オプションが設定されている場合 (デフォルト設定)、論理値は下位ビットによって TRUE と FALSE のどちらなのかが決定されます。Microsoft* Fortran PowerStation の論理値では、C 言語で記述されたプロシージャーと互換性を保持するため、0 (ゼロ) が FALSE で、ゼロ以外の値が TRUE になるように、fpscomp nological ではなく、fpscomp logical を指定します。

LOGICAL(1)、LOGICAL(2)、LOGICAL(4)、および LOGICAL(8) のデータ表現 (fpscomp nological オプションが指定されている場合) を以下に示します。

LOGICAL(1)、LOGICAL(2)、LOGICAL(4)、および LOGICAL(8) のデータ表現
LOGICAL(1)、LOGICAL(2)、LOGICAL(4)、および LOGICAL(8) のデータ表現