ページの先頭行へ戻る
PowerSORT (64bit) V8.0 ユーザーズガイド
FUJITSU Software

1.6.3 データ形式

ここでは、データ形式の概要を示します。
データ形式には、以下の3つの種類があり、それぞれの種類ごとに型があります。

1.6.3.1 文字

文字の型には、以下の7つの型があります。

ASCIIコード

文字を8ビット透過なコード順に比較します。
複数バイト文字が混在している場合は、オプションを指定することによって文字ごとに比較します。
ASCIIコード、EUCコード、および8単位カナコード(半角カナ)を処理できます。
入力ファイルのコード系がEBCDICコード系の場合、ASCIIコード順に並べます。

EBCDICコード

EBCDIC文字を8ビット透過なコード順に比較します。
入力ファイルのコード系がASCIIコード系の場合、EBCDICコード順に並べます。

EUCコード

EUCコードを文字ごとに比較します。
EUCコードにはファイルコードと呼ぶ表示形式のコードと2バイト、4バイトのプロセスコードと呼ぶ内部コードがあります。PowerSORTではそれぞれEUC、EU2、EU4というキーワードで使い分けます。

JEFコード

富士通の汎用計算機で用いられている日本語コードです。
文字を16ビット透過なコード順に並べます。

Unicode

世界中の文字を統一的に記述できる国際的な文字コードです。
PowerSORTでは、以下の3つの形式をサポートしています。

文字形式2桁年号

BSORT_TOPYYの指定値に従って、2桁の数字を2桁年号として比較します。
BSORT_TOPYYはスタートアップファイルで定義します。

照合順序変更

与えられた照合順序の情報に従って、1バイトの文字を他の文字に置き換えて比較します。

1.6.3.2 数値

数値の型には、以下の16の型があります。

符号なし2進数

1バイト中の任意のビットを取り出してキーフィールド、被比較フィールド、または比較フィールドの比較値として使用します。
ビットの取り出しにはマスク値を使用します。マスク値とフィールドの値の論理積を比較値にします。

固定小数点2進数

先頭1ビットを符号とした固定小数点2進数のフィールドです。
固定小数点2進数の形式は、8086系MPUで使用されているLittle endianという形式と、Big endianの形式があります。単に固定小数点2進数という場合、Big endianの形式です。

8086形式固定小数点2進数

8086系MPUで使用されている固定小数点2進数のフィールドです。
この形式はLittle endianという呼び名で知られています。

システム依存形式固定小数点2進数

システムの標準がBig endianの場合、固定小数点2進数を意味します。
システムの標準がLittle endianの場合、8086形式固定小数点2進数を意味します。

符号なし固定小数点2進数

符号フラグをもたない固定小数点2進数です。
8086系MPUで使用されているLittle endianという形式と、Big endianの形式があります。単に符号なし固定小数点2進数という場合、Big endianの形式です。

8086形式符号なし固定小数点2進数

8086系MPUで使用されている符号なし固定小数点2進数のフィールドです。
この形式はLittle endianという呼び名で知られています。

システム依存形式符号なし固定小数点2進数

システムの標準がBig endianの場合、符号なし固定小数点2進数を意味します。
システムの標準がLittle endianの場合、8086形式符号なし固定小数点2進数を意味します。

IEEE形式浮動小数点2進数

指数部と仮数部で表現され、符号は指数部の先頭1ビットに設定される2進数の表現形式です。

M形式浮動小数点2進数

富士通の汎用計算機で用いられている浮動小数点2進数をLittle endianで格納した形式です。
指数部と仮数部で表現され、符号は指数部の先頭1ビットに設定される2進数の表現形式です。
PowerSORTでは、正規化された値だけをサポートしています。

富士通メインフレーム形式浮動小数点

NetCOBOL V12でサポートされた富士通メインフレーム形式浮動小数点の形式です。
PowerSORTでは、正規化された値だけをサポートしています。

内部10進数

1バイトに2桁の10進数を格納した10進数の表現形式です。

xx

xx

xx

xS

  x:0x0~0x9
  S:[正の場合]0xa、0xc、0xe、0xf
     [負の場合]0xb、0xd (注)
  注) 符号の位置(S)に、正または負のコード以外が現れた場合、正の符号として扱います。

符号なし内部10進数

PowerSORTでは、以下の3つの形式をサポートしています。

外部10進数

1バイトに1桁の10進数を表示可能形式で格納した10進数の表現形式です。

[ASCIIコード系(富士通COBOL形式)]

3x

3x

3x

Sx

  3:0x3
  x:0x0~0x9
  S:[正の場合]0x4
     [負の場合]0x5 (注)

[ASCIIコード系(Micro Focus COBOL形式)]

3x

3x

3x

Sx

  3:0x3
  x:0x0~0x9
  S:[正の場合]0x3
     [負の場合]0x7 (注)

[EBCDICコード系]

Fx

Fx

Fx

Sx

  F:0xf
  x:0x0~0x9
  S:[正の場合]0xa、0xc、0xe、0xf
     [負の場合]0xb、0xd (注)

注) 符号の位置(S)に、正または負のコード以外が現れた場合、正の符号として扱います。

符号なし外部10進数

1バイトに1桁の10進数を表示可能形式で格納した符号部をもたない10進数の表現形式です。

[ASCIIコード系]

3x

3x

3x

3x

  3:0x3
  x:0x0~0x9

[EBCDICコード系]

Fx

Fx

Fx

Fx

  F:0xf
  x:0x0~0x9

外部10進形式2桁年号

BSORT_TOPYYの指定値に従って、2バイトの外部10進数を2桁年号として比較します。
BSORT_TOPYYはスタートアップファイルで定義します。

内部10進形式2桁年号

BSORT_TOPYYの指定値に従って、2バイトの内部10進数を2桁年号として比較します。
BSORT_TOPYYはスタートアップファイルで定義します。

10進形式2桁年号

BSORT_TOPYYの指定値に従って、1バイトの符号なし内部10進数を2桁年号として比較します。
BSORT_TOPYYはスタートアップファイルで定義します。

1.6.3.3 数字

数字の型には、以下の5つのデータ形式があります。

符号なし数字

符号なし外部10進数と同じ形式です。

前置別符号付数字

先頭の1バイトに符号部をもった、1バイトに1桁の10進数を表示可能形式で格納した10進数の表現形式です。

[ASCIIコード系]

SS

3x

3x

3x

  3:0x3
  x:0x0~0x9
  SS:[正の場合]0x2b
      [負の場合]0x2d (注)

[EBCDICコード系]

SS

Fx

Fx

Fx

  F:0xf
  x:0x0~0x9
  SS:[正の場合]0x4e
      [負の場合]0x60 (注)

注) 符号の位置(SS)に、正または負のコード以外が現れた場合、正の符号として扱います。

後置別符号付数字

最終の1バイトに符号部をもった、1バイトに1桁の10進数を表示可能形式で格納した10進数の表現形式です。

[ASCIIコード系]

3x

3x

3x

SS

  3:0x3
  x:0x0~0x9
  SS:[正の場合]0x2b
      [負の場合]0x2d (注)

[EBCDICコード系]

Fx

Fx

Fx

SS

  F:0xf
  x:0x0~0x9
  SS:[正の場合]0x4e
      [負の場合]0x60 (注)

注) 符号の位置(SS)に、正または負のコード以外が現れた場合、正の符号として扱います。

前置オーバパンチ符号付数字

1バイトに1桁の10進数を表示可能形式で格納した10進数の表現形式です。

[ASCIIコード系(富士通COBOL形式)]

Sx

3x

3x

3x

  3:0x3
  x:0x0~0x9
  S:[正の場合]0x4
     [負の場合]0x5 (注)

[ASCIIコード系(Micro Focus COBOL形式)]

Sx

3x

3x

3x

  3:0x3
  x:0x0~0x9
  S:[正の場合]0x3
     [負の場合]0x7 (注)

[EBCDICコード系]

Sx

Fx

Fx

Fx

  F:0xf
  x:0x0~0x9
  S:[正の場合]0xa、0xc、0xe、0xf
     [負の場合]0xb、0xd (注)

注) 符号の位置(S)に、正または負のコード以外が現れた場合、正の符号として扱います。

後置オーバパンチ符号付数字

外部10進数と同じ形式です。