今、触ったこともないcobolのソースの管理をやれ、と言われてます。
で、cobolの実行プログラム、拡張子は、*****.so
見たいな感じなのですが、それをコンパイルするのに、多くのソースがいるみたいなのです、その関連を調べろ、と言われました。たとえば、cobolのmakefileと呼ばれているものを、unix上でviで開いてみると、「ヘッダープログラム」なるコメント文が書いていたり、オブジェクトとか書いていたり、、そして、そのヘッダーの部分をみると、たしかにプログラムの名称が書いているので、今度はそのプログラムの中身を見てみると、同じように、また違うプログラムを参照しているようなのです。ひとつの実行ファイルを生成するのに、ソースがツリー構造になっていて、それをすべて理解する必要があるのですが、中身をみたときに、どういうコマンド等を参照していけばいいのかわかりません。
分かりやすく整理すると、ある実行プログラムを生成するのに、ソースが必要なのですが、そのソースの全てを洗い出すには、どうすればいいのか?ということなのですが、
詳しい方、ぜひよろしくお願いします!

このQ&Aに関連する最新のQ&A

A 回答 (1件)

>unix上でviで開いてみると


と言うコメントを拝見すると、UNIX・COBOLなのでしょうね。

ご質問の内容をCOBOLのプログラムソースに限定してお答えすると・・・・
COBOLは「ファイル読込用」や「ファイル更新用」等々多くの命令プログラムを部品化して1本のプログラムを作成することが多々あります。
ファイルの項目の宣言やワークで使用する項目等共通化できるものは、別に作っておいて実際それを使用したいプログラムで「COPY]と言うコマンドで参照します。
また、共通化できるプログラム本体を別に作った場合、実際それを使用したいプログラム内では「CALL」と言うコマンドで参照します。外部プログラム(ソース)の呼び出しは通常この2つのコマンドを使用しているはずです。

cobolのソースと言うのがJCLだとすると、また答えの内容が違ってきます。
ご質問の内容の答えになっているといいのですが・・・・

参考URL:http://www.kk.iij4u.or.jp/~ayumin/cobol/
    • good
    • 0
この回答へのお礼

>ご質問の内容の答えになっているといいのですが・・・・
とんでもございません!!大変参考になりました。
確かに、viで開いてコメントを見てみると、「ファイル読み込み」やら「ファイル更新」やらの言葉が書いてありました。
>共通化できるものは、別に作っておいて実際それを使用したいプログラムで「COPY]と言うコマンドで参照します。
そういうことなんですね!そして、COPYとCALL、この二つがポイントのようですね。このコマンドの参照先をみれば分かるような気がしてきました。
本当にありがとうございました!!

お礼日時:2002/03/11 21:28

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「古い圧縮ファイル」の確認方法

Dドライブのディスクのクリーンアップをしたいのですが、実行できるものが、「古い圧縮ファイル」の削除しかありません。

「古い圧縮ファイル」がどのプログラムかを確認する方法を教えてください。

また、圧縮されたファイルの名前は青くなるらしいのですが、見つかりません。どうしてでしょうか
圧縮ファイルは1G弱あります。

Aベストアンサー

http://www.atmarkit.co.jp/fwin2k/win2ktips/106cleanup/106cleanup.html

初期設定では、50日以上アクセスの無かったファイルに対して、圧縮が行われます。
当然、圧縮してからでないと、ファイル名は青色にはなりませんので、ディスク・クリーンアップでの候補段階では、黒色のままです。


尚、設定によっては青色表示にならない場合も有りますけど。

http://121ware.com/qasearch/1007/app/nec.jsp?005084

QアセンブラソースをCOBOLソースに自動変換

アセンブラソースをCOBOLソースに自動変換するようなソフトは有るのでしょうか。

Aベストアンサー

実行ファイルからソースを作成するソフトは、ディスコンパイラ(逆コンパイラ・デコンパイラとも)と言うものです。

javaだとディスコンパイラが存在し、割合実用になるっぽいですが、COBOLでは存在自体が厳しいですね…Cだったら探せばディスコンパイラはありますけど、x86以外の処理系ではなかなか厳しいと思います。No2の回答者さんからも指摘がありますが、処理系が何かをはっきりさせないと、一般論的回答しか付かない(それしかできない)と思いますよ。

Qファイルの圧縮方法

AVIやMPGの画像ファイルを圧縮する方法を教えてください。900mb位のファイルをCD-Rに落とし込める700mbまで圧縮したいんですが。できれば、zipやlzhなどの後で解凍しなくてはいけないような圧縮方法ではなく、多少画像が荒くなってもファイルを単純に縮小させるような方法を教えていただけると有り難いのですが。。
因みに、TMPGEncを試してみたんですが、どうもうまくいかなくて。。ファイルサイズが元のファイルより逆に大きくなってしまうんです。
すいませんが、宜しくお願いします。

Aベストアンサー

画像圧縮?くす(^^
エンコはTMPGEncやaviutlでやるのがふつーです。
ええ 絶対! 
aviutl
http://ruriruri.zone.ne.jp/aviutl/

zipとかで圧縮しても意味ありません サイズ的に。

で、TMPGEncで元より大きくなるのは問題は
コーデック、画像サイズ、 音声ファイルなど
理由はいっぱいあります。対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=625581

だから圧縮というか再エンコードが面倒なら
ファイルをテキトーな部分でカットする方向性はどお?
CD-R 2枚に保存 450 450 くらいでカット。
対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=610331
ではでは!

追伸
カンタンにならrmファイルに変更かなあ
でも画質は落ちますよ
ネット配信 ストリーミング形式でどぞ!
RealplusG2とかRealEncoderで変換
でもaviでもないしmpegでもないですけど、どお?

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=610331

画像圧縮?くす(^^
エンコはTMPGEncやaviutlでやるのがふつーです。
ええ 絶対! 
aviutl
http://ruriruri.zone.ne.jp/aviutl/

zipとかで圧縮しても意味ありません サイズ的に。

で、TMPGEncで元より大きくなるのは問題は
コーデック、画像サイズ、 音声ファイルなど
理由はいっぱいあります。対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=625581

だから圧縮というか再エンコードが面倒なら
ファイルをテキトーな部分でカットする方向性はどお?
CD-R 2枚に保存 450...続きを読む

QCOBOL85からCOBOL2002移行

HPのOSバージョンアップして、COBOL85からCOBOL2002移行の作業をしました。再コンパイルして、生成されたモジュール(又はオブジェクトファイル.o)のサイズは元の2、3倍になってしまいましたが、どういうことですか?ご教示お願いします。

Aベストアンサー

>なぜバイナリ構造が変更したら、実行モジュール大きくなるのは
>少し、詳しく教えていただけませんか。
ちゃんと書くと長いので掻い摘んで描くと
RISCではコンパイル時点で命令を細かく分け、実行時に並列計算できるもの探して実行していましたが、
Itaniumで採用したEPICではコンパイル時点で並列部分を抽出し実行モジュールに並列情報を持たせています。
アーキテクチャが変わると実行モジュールの構成(サイズ)が変わるのは仕方がないことです。

Qファイルの圧縮方法が解りません

窓の杜やベクター等に置かれている、フリーの圧縮、解凍ソフトをダウンロードしていますが、テキストファイルや、画像ファイルの圧縮方法が解りません。何方か教えて頂けませんか?

Aベストアンサー

ソフトの開発者のサイトで質問することをお奨めします。

ソフトごとに操作方法が異なりますので、使用しているソフト名すらない状態では誰も必要とする回答を出せません。

窓の杜やベクターでは開発者のサイトへのリンクがありますから、そこからアクセスできますよ。

Q[COBOL] ソースの復帰

COBOLのプログラムなのですが、
コンパイル済みのオブジェクトから
ソースを引っ張りだす、というようなことはできるのでしょうか?

プログラム自体はあるのですがソースが見つからなくて
困っております。

宜しくお願いいたします。

Aベストアンサー

機械語、アッセンブラやそれにやや近いC言語なら、元に
近い形にReverseConpileが出来るかもしれません。
(記事を読んだことあり。)
しかし高級言語(1語が沢山の機械語と対応するもの)は
作るのも難しいでしょう。最適化というのも行われるようだし。それにデータネームには戻すのは不可能でしょう。
ADD A0001 to A0002 なんて出来あがったとしても、A0001は何を表すのか割り出すのってお手上げではありませんか。
結論は貴社が使っているCOBOL処理系のメーカーに、逆コンパイラーがあるか聞いて、「ない」という返事で一巻の終わりでしょう。自作は出来ず、他社ソフトメーカーでも作るわけがないでしょう。マーケットがない。
ソース文書ベースもハードディスクやテープライブラリにもないのでしょうか。

Qpsdファイルの圧縮方法

psdファイルの圧縮方法を教えてください。(基本的質問で恐縮ですが)
win98です。なお、ファイルは9MB程度ですが、圧縮したものを解凍する際、鮮明度が落ちずに元通りの画像で開けますでしょうか?

Aベストアンサー

●大きなサイズのファイルを分割して送付

+Lhaca 1.20 デラックス版での分割方法
http://park8.wakwak.com/~app/Lhaca/

 1. インストールは、ダウンロードした Lhaca120.exe を実行する。
 2. デスクトップに作成された +Lhaca のショートカットに、
   対象のファイルをALTキーを押しながらドロップする。
 3. 保存場所を聞いてくるので、望みの場所を指定する。
   (圧縮形式は、相手が解凍できる形式を選ぶ。)
 4. 分割されたファイル群と結合用のバッチファイルが作成される。
   (デフォルトでは 1.2MB を上限として分割される。)
   (このサイズは +Lhaca で変更できる。)
 5. (4)のファイル全てを、容量を超えないようにメールに添付して送信
   する。
   (添付ファイル総数を本文に明記すること。)
 6. 受け取った側は、全ての添付ファイルを一箇所に集めて、バッチファ
   イルを実行する。
   (操作手順は、本文に明記すること。)
 7. 分割されたファイルが結合されるので、結合された圧縮ファイルを解
   凍する。
 8. 9MBのファイルが解凍されるので、作業する。


これでどうかな!?

※他の圧縮ソフトも分割機能が備わっていると思うが・・・

●大きなサイズのファイルを分割して送付

+Lhaca 1.20 デラックス版での分割方法
http://park8.wakwak.com/~app/Lhaca/

 1. インストールは、ダウンロードした Lhaca120.exe を実行する。
 2. デスクトップに作成された +Lhaca のショートカットに、
   対象のファイルをALTキーを押しながらドロップする。
 3. 保存場所を聞いてくるので、望みの場所を指定する。
   (圧縮形式は、相手が解凍できる形式を選ぶ。)
 4. 分割されたファイル群と結合用のバッチファイルが作成される。
   (...続きを読む

QVBScriptの実行完了を待ってからDOSのプログラムを実行したい。

DOSのバッチからVBScriptを実行しています。
VBScriptの実行が完了してから次のDOSコマンドを実行させたいのですが、
START /WAIT SAMPLE.vbs
では
実行完了を待ってくれないみたいです。

どうしたらよいでしょうか?ご教授お願いいたします。

Aベストアンサー

適当なVBScript を書いて試してみましたが、完了待ちしますよ。
ひょっとして、 SAMPLE.vbs でウインドウアプリを起動してたりして、
それが終了してないのに、終了してるとか思ってませんか

SMPLE.vbs を補足していただけますか

QNTFS圧縮したファイルを全部まとめて戻す方法

NTFS圧縮したファイルをプロパティからひとつひとつチェックをはずして戻すのではなく、圧縮されたファイルを全部まとめて元に戻す方法ってあるのでしょうか?

Aベストアンサー

圧縮を解除したいファイルを全て選択した状態で
→プロパティ→NTFS圧縮のチェックを外す→OK

それらのファイルがフォルダに入っているなら
フォルダのプロパティからやってもいい。
(サブフォルダにも適用するか尋ねられるからOKにする)

QCOBOLプログラム

次のプログラムがわかりません。。。

PERFORM  CLEAR-SEC
  VARYING  S1
    FROM  1  BY  3
      UNTIL  S1  >  4
  AFTER   S2
    FROM  1  BY  5
      UNTIL  S2  >  30

特にAFTER以降がどういう処理なのかがサッパリです。
よろしくお願いします。

Aベストアンサー

S1が1で、S2が1、6、11、16、21、25、31とCLEAR-SECを繰り返す。
S1が4で、S2が1、6、11、16、21、25、31とCLEAR-SECを繰り返す。

という流れになるかと思います。
2重ループの処理になっています。


人気Q&Aランキング

おすすめ情報