05 NAME-2.
10 SALARY PICTURE XXX.
10 SO-SEC-NO PICTURE X(9).
10 MONTH PICTURE XX.
05 NAME-1 REDEFINES NAME-2.
10 WAGE PICTURE XXX.
10 EMP-NO PICTURE X(9).
10 YEAR PICTURE XX.
05 NAME-2.
10 SALARY PICTURE XXX.
10 SO-SEC-NO PICTURE X(9).
10 MONTH PICTURE XX.
05 NAME-1 REDEFINES NAME-2.
10 WAGE PICTURE 999V999.
10 EMP-NO PICTURE X(6).
10 YEAR PICTURE XX.
ある区域を再定義しても、その区域のすべての記述は常に有効のままです。 つまり、再定義によってどのデータも、消去されたりそれ以前の記述を置き換えたりしません。 したがって、B REDEFINES C と指定した場合、2 つのプロシージャー・ステートメント MOVE X TO B と MOVE Y TO C はどちらも、プログラム内の任意のポイントで実行できます。
最初のステートメントの場合、B と記述された区域は X の値と形式をとります。 2 番目のステートメント場合、同じ物理域 (今度は C と記述されます) は Y の値と形式をとります。 2 番目のステートメントが最初のステートメントの直後に実行されると、1 つの記憶域で X の値は Y の値に置き換わります。
05 B PICTURE 99 USAGE DISPLAY VALUE 8.
05 C REDEFINES B PICTURE S99 USAGE COMPUTATIONAL-4.
05 A PICTURE S99 USAGE COMPUTATIONAL-4.
1111 0000 1111 1000.
ADD B TO A
ADD C TO A
前者のステートメントでは、値 8 が A に加算されます (B が USAGE DISPLAY をもっているため)。 後者のステートメントでは、記憶域内のビット構成 (2 桁の 10 進数に切り捨てられる) は 2 進数の -48 になり、-48 という値が A に加算されます (C が USAGE COMPUTATIONAL-4 をもっているため)。
前記の例は、再定義を適切に使用しないと、予期しないまたは正しくない結果となることを示します。