4

ファイルに 7 桁のパック 10 進数フィールドがあります。これらの 7 桁を抽出/分離するデータ項目を定義するにはどうすればよいですか?

たとえば、最初の 2 桁を 1 つのデータ項目に格納し、残りの桁を別のデータ項目に格納して、後で操作できるようにしたいとします。

4

2 に答える 2

0

01 ザ・アレイ。

03  filler pic x(02) value '00'.

03  filler pic x(02) value '01'.

03  filler pic x(02) value '02'.

など、まで

03  filler pic x(02) value 'FF'.

01 two-array は、-array を再定義します。

03  harry occurs 256 pic x(02).

91サブ1。

03  filler pic x(01) value low-values.

93  sub1-byte2 pic x(01).

01 sub2 は sub1 comp を再定義します。

01 pd 写真 x(04)。

01 パブ pic 9(04)。

01 卵。

03  eggs1 pic x(01).

03  eggs2 pic x(01).

さまざまなパブを実行します

1から1

パブ > 4 まで

move pd(pub:1) to sub1-byte2

move harry(sub2 + 1) to eggs

display eggs1 egg2

エンドパフォーマンス。

つまり、'00' から 'FF' までの値を持つ 256 個の 2 バイト フィールドの配列です。

パック 10 進数フィールドを保持する 4 バイト フィールドをステップスルーします。

各バイトを添字として配列に使用します (「00」が配列の最初のフィールドを指すように 1 を追加します)。

指している 2 バイト フィールドには、パック 10 進数フィールドからのそのバイトを表す 2 ニブルの値があります。

パック 10 進数フィールドの 4 番目のバイトの右側のニブルは符号用です。

于 2017-12-30T01:08:40.733 に答える