国別比較は、国別クラスの 2 つのオペランドの国別文字値の比較です。
比較条件が国別クラスではないオペランドを指定しているときは、比較の前にそのオペランドが国別カテゴリーのデータ項目へ変換されます。以下のリストで、オペランドの国別カテゴリーへの変換について説明します。
国別浮動小数点データ項目は、数値としてではなく、国別カテゴリーのデータ項目であるかのように処理されます。
変換に関する暗黙の移動は、MOVE ステートメントの規則に従って実行されます。
生成された国別カテゴリーのデータ項目は、2 つの国別オペランドの比較で使用されます。
2 つのオペランドの長さが異なる場合は、短い方のオペランドの右側に デフォルトの国別スペース文字 (NX'0020') を埋め、両方のオペランドの長さが等しくなるようにして比較が行われます。 こうして比較は、長さが同じオペランドを比較するための規則に従って実行されます。
2 つのオペランドの長さが同じ場合は、オペランド内の同じ位置にある国別文字同士が比較されます。 比較は左端から開始され、途中で異なる国別文字が検出されるか、右端に到達するまで繰り返されます。 対応する国別文字がすべて同じであった場合は、2 つのオペランドが等しいと判別されます。
オペランド内で最初に検出された異なる国別文字は、2 つのオペランドの関係を判別するために比較されます。 より大きな照合値を持つ国別文字が入ったオペランドが、より大きなオペランドになります。
より大きな照合値は、文字の 16 進値を使用して判別されます。
PROGRAM COLLATING SEQUENCE 節は、国別オペランドの比較には影響を及ぼしません。