プログラム中で直接16進コードを指定する方法は?  プログラム中で16進数の漢字コードを直接指定できるか?

Document created by Masaaki_Iyama Employee on Jun 19, 2015
Version 1Show Document
  • View in full screen mode

文書番号: JTEC000993

製品名: CA-Easytrieve Plus

バージョン: ALL

OS: z/OS, MSP, VOS3

 

Question

プログラム中で直接16進コードを指定する方法は?

プログラム中で16進数の漢字コードを直接指定できるか? 

 

Answer

16進コードを ''(引用符)で囲み、直前に16進数を示すパラメータを指定することで16進コードを直接扱うことができます。

16進リテラルは主に、標準のデータ入力用キーボードに存在しない文字をコーディングするために使用されるものであり、次の2種類があります。

 

● EBCDIC16進リテラル

指定方法    X '16進リテラル '  

指定例       X '0000 '      →    2バイトの2進数の0

 

● 漢字16進リテラル

指定方法   D '16進リテラル '  

指定例      D '40404040'     →     2つの2バイト・スペース (IBMコード・システム)

 

注意

漢字16進リテラルは4つの数字を1グループとしてひとつの漢字形式の文字を表しますがデータ中にシフト・コードを含むことはできません。シフト・コードを含む形で16進コードで指定する場合には、EBCDIC16進リテラルとして指定します。意するからです。自動集計の処理がある場合は、さらにSUMSPACEの桁数が追加されますので、LINESIZEを計算するときは考慮に入れてください。

 

記述例

(例) FLGに「N」のたっているレコードのデータ部にNULLデータを送ってファイルに出力する

FILE   FILEA

A-FLG      1      1  A

A-DATA    2     10  A

FILE  FILEB

B-FLG      1      1  A

B-DATA    2     10  A

*

JOB

      B-FLG    =    A-FLG

      B-DATA   =    A-DATA

      IF  A-FLG   =    'N'

           B-DATA  =   X'00000000000000000000'

      END-IF

      PUT  FILEB

                                           

NULLデータの移送は

MOVE   X'00'   TO   B-DATA   FILL   X'00'

でもよい。

 

Attachments

    Outcomes