【iOS版アプリ】不具合のお知らせ

久しぶりにCOBOL開発をする事になり、
懐かしく思ってPGを解析しているとどうしても
思い出せないものがありました。 
COMP形式です。
AAA PIC 9(05)
     5バイトで12345ならば「F1F2F3F4F5」
BBB PIC 9(05)COMP-3
     3バイトで12345ならば「12345F」
CCC PIC 9(05)COMP
     この場合は何バイトになるのでしょうか?
     及び、12345の場合、どのようになるのでしょうか?

以上、初歩的な部分ですが皆様よりご教授頂きたいと思います。
よろしくお願いします。

gooドクター

A 回答 (4件)

メーカーやOSによって違うのではないでしょうか?



メインフレームの日立であれば、
PIC S9(n) COMP
の場合、n=1~4は2バイト、n=5~9は以上は4バイト、10~18は8バイトの2進数になります。
    • good
    • 8
この回答へのお礼

補足情報ありがとうございます。

説明不足ですみません。
今回はPC-COBOLと富士通のMシリーズが
対象で質問には富士通機を意識して書きました。

お礼日時:2007/06/23 00:27

そうですね。

私の担当機種はオフコンの為回答したように入っていました。
質問者の方の環境がわからなければ両方回答してないと誤解を与えてしまいますので配慮が足りませんでした

ご迷惑をおかけして申し訳ございません
    • good
    • 3

>AAA PIC 9(05)は「F1F2F3F4F5」


>ではなく「3132333435」と入っていました

IBM互換のメインフレームで使われているEBCDIC(またはEBCDIK)コードなら、前者になります。

JISコードを採用しているNEC、PC上のCOBOLなら後者になるのでは?
    • good
    • 1
この回答へのお礼

補足情報ありがとうございます。

説明不足ですみません。
今回はPC-COBOLと富士通のMシリーズが
対象で質問には富士通機を意識して書きました。

お礼日時:2007/06/23 00:25

4バイトで「00003039」(HEX)と入って、負の数の場合は2の補数で入るはずです



AAA PIC 9(05)は「F1F2F3F4F5」ではなく「3132333435」と入っていました
    • good
    • 2
この回答へのお礼

ありがとうございます。

説明不足ですみません。
今回はPC-COBOLと富士通のMシリーズが
対象で質問には富士通機を意識して書きました。

お礼日時:2007/06/23 00:24

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

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

人気Q&Aランキング