dポイントプレゼントキャンペーン実施中!

1バイトで2桁の数値(つまり4ビットで1桁の数値)が書いてあるデータを1バイト1桁の数値に変換するにはどのようにプログラミングすればいいですか?
またはフリーのツールでもあれば教えてください。

A 回答 (3件)

   WORKING-STORAGE     SECTION.


 *
   01 SRC-DATA      PIC 9(2) COMP-3.
   01 SRC-DATA-R     REDEFINES SRC-DATA.
    03 SRC-DATA-BYTE   PIC X(1).
 *
   01 DST-DATA      PIC 9(2).
   01 DST-DATA-R     REDEFINES DST-DATA.
    03 DST-DATA-BYTE1  PIC 9(1).
    03 DST-DATA-BYTE2  PIC 9(1).
 *
  PROCEDURE      DIVISION.
 *
  START.
    MOVE  1バイトの何か  TO  SRC-DATA-BYTE.
    MOVE  SRC-DATA     TO  DST-DATA.
    MOVE  DST-DATA-BYTE1  TO  上の桁(0~9)
    MOVE  DST-DATA-BYTE2  TO  下の桁(0~9)
  *
    STOP RUN.
  *
    • good
    • 0
この回答へのお礼

まだ試してはいないのですが、ロジックを拝見したところできそうな気がします。
ありがとうございました。

お礼日時:2008/12/04 15:38

どこのメーカーの何というCOBOLですか?


OSは何でしょうか?

私が長年使っていたCOBOLでは、10進パック形式は必ず符号部が存在(+はX'C'、-は'D'、符号なしはX'F'など)していました。
つまり、2桁の10進数では、2バイト使われていました。

念のために確認ですが、符号部は存在しないのですね?
    • good
    • 0

パック十進数をゾーン十進数にするのですか?それなら簡単だけど(MOVEするだけで変換されるのが普通)それともなにか特別な事でもするのですか?それが分からないと答えようがありません。

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!