組込みデータ型

インテル® Fortran は、数値データがネイティブ・リトル・エンディアン順になっていると想定します。これは、最下位の最も右側のゼロ・ビット (ビット0) またはバイトが、最上位の最も左側のビット (またはバイト) よりも低いアドレスを持つ順序です。非ネイティブ・ビッグ・エンディアン形式と VAX* 浮動小数点形式の使用方法については、「書式なしデータの変換」を参照してください。

図中の :A というシンボルは、ビット 0 を含むバイトのアドレス、すなわち表現されているデータ要素の開始アドレスを示しています。

以下の表に、インテル Fortran が使用している組込みデータ型、必要な記憶域、および有効な範囲を示します。例えば、INTEGER(4) の宣言は INTEGER(KIND=4) および INTEGER*4 と同じです。

データ型 

記憶域 

説明 

BYTE
INTEGER(1)

1 バイト
(8 ビット)

BYTE 宣言は、INTEGER(1) と等価な符号付き整数データ型です。

INTEGER

INTEGER(2)、INTEGER(4)、および INTEGER(8) を参照。

符号付き整数で、INTEGER(2)、INTEGER(4)、または INTEGER(8)。大きさは -integer_size nn コンパイラ・オプションによって制御されます。デフォルト設定は、-integer_size 32 (INTEGER(KIND=4)) です。

INTEGER(1)

1 バイト
(8 ビット)

-128 〜 127 の範囲の符号付き整数値。

INTEGER(2)

2 バイト
(16 ビット)

-32,768 〜 32,767 の範囲の符号付き整数値。

INTEGER(4)

4 バイト
(32 ビット)

-2,147,483,648 〜 2,147,483,647 の範囲の符号付き整数値。

INTEGER(8)

8 バイト
(64 ビット)

-9,223,372,036,854,775,808 〜 9,223,372,036,854,775,807 の範囲の符号付き整数値。

REAL(4)
REAL

4 バイト
(32 ビット)

1.17549435E-38 〜 3.40282347E38 の範囲の IEEE S 浮動小数点形式での単精度実数浮動小数点値。1.17549429E-38 〜 1.40129846E-45 の範囲の値は正規化されていない値 (サブノーマル) です。

REAL(8)
DOUBLE PRECISION

8 バイト
(64 ビット)

2.2250738585072013D-308 〜 1.7976931348623158D308の範囲の、IEEE T 浮動小数点形式での倍精度実数浮動小数点値。2.2250738585072008D-308 〜 4.94065645841246544D-324 の範囲の値は正規化されていない値 (サブノーマル) です。

REAL(16)
EXTENDED PRECISION

16 バイト (128 ビット)

6.4751751194380251109244389582276465524996Q-4966 〜 1.189731495357231765085759326628007016196477Q4932 の範囲の、IEEE X 浮動小数点形式での拡張精度実数浮動小数点値。

COMPLEX(4)
COMPLEX

8 バイト
(64 ビット)

IEEE S浮動小数点形式の実部と虚部の組として表現される、単精度複素数浮動小数点値。実部と虚部の範囲は1.17549435E-38 〜 3.40282347E38 です。1.17549429E-38 〜 1.40129846E-45 の範囲の値は正規化されていない値 (サブノーマル) です。

REAL(16)
EXTENDED PRECISION

16 バイト (128 ビット)

6.4751751194380251109244389582276465524996Q-4966 〜 1.189731495357231765085759326628007016196477Q4932 の範囲の、IEEE X 浮動小数点形式での拡張精度実数浮動小数点値。

COMPLEX(8)
DOUBLE COMPLEX

16 バイト (128 ビット)

IEEE T 浮動小数点形式の実部と虚部の組として表現される、倍精度複素数浮動小数点値。実部と虚部の範囲は 2.2250738585072013D-308 〜 1.7976931348623158D308 です。2.2250738585072008D-308 〜 4.94065645841246544D-324 の範囲の値は正規化されていない値 (サブノーマル) です。

COMPLEX(16)
EXTENDED PRECISION

32 バイト (256 ビット)

IEEE X 浮動小数点形式の実部と虚部の組として表現される、拡張精度複素数浮動小数点値。実部と虚部の範囲は 6.4751751194380251109244389582276465524996Q-4966 〜 1.189731495357231765085759326628007016196477Q4932 です。

LOGICAL

LOGICAL(2)、LOGICAL(4)、および LOGICAL(8) を参照。

論理値で、LOGICAL(2)、LOGICAL(4)、または LOGICAL(8)。大きさは -integer_size nn コンパイラ・オプションによって制御されます。デフォルト設定は、-integer_size 32 (LOGICAL(4)) です。

LOGICAL(1)

1 バイト
(8 ビット)

論理値 .TRUE.または .FALSE.。

LOGICAL(2)

2 バイト
(16 ビット)

論理値 .TRUE.または .FALSE.。

LOGICAL(4)

4 バイト
(32 ビット)

論理値 .TRUE.または .FALSE.。

LOGICAL(8)

8 バイト
(64 ビット)

論理値 .TRUE.または .FALSE.。

CHARACTER

1 文字につき 1 バイト (8 ビット)

文字コード規約によって表現される文字データ。文字宣言は CHARACTER(LEN=n) または CHARACTER*n の形式で指定することができます。n はバイト数ですが、(*) として指定すれば、文字列長を渡す書式を指定することができます。

HOLLERITH

Hollerith 文字1つにつき1バイト (8 ビット)

Hollerith 定数。

Intel® Fortran Language Reference』(英語) で説明しているように、2 進 (ビット) 定数を定義することができます。

次に示すセクションでは、組込みデータ型についてさらに詳しく説明しています。