JPH0588872A - プログラム構造図作成処理システム - Google Patents

プログラム構造図作成処理システム

Info

Publication number
JPH0588872A
JPH0588872A JP25220691A JP25220691A JPH0588872A JP H0588872 A JPH0588872 A JP H0588872A JP 25220691 A JP25220691 A JP 25220691A JP 25220691 A JP25220691 A JP 25220691A JP H0588872 A JPH0588872 A JP H0588872A
Authority
JP
Japan
Prior art keywords
list file
file
structure diagram
stack
nest
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP25220691A
Other languages
English (en)
Inventor
Naomi Matsushita
直美 松下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP25220691A priority Critical patent/JPH0588872A/ja
Publication of JPH0588872A publication Critical patent/JPH0588872A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 簡単に作成可能で、かつスタックレベルを把
握しスタック操作のミスによるバグ発見を見やすくした
アセンブラソースプログラムの構造図を作成するプログ
ラム構造図作成処理システムを実現する。 【構成】 モジュールとサブルーチンの開始と終了を示
す特定情報(文字または文字列)を含むアセンブルリス
トファイル1を入力し、デバイスごとのサブルーチン呼
び出し命令およびスタックレベルを含むスタック操作命
令について情報を含むデバイス情報ファイル3を参照し
て、CPU2は、開始検出手段21、終了検出手段22
および呼び出し命令検出手段23により、前記特定情報
を検出することで、モジュール名、サブルーチン名およ
びスタック操作命令を検索し、ネストリストファイル4
に出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラム構造図作成
処理システムに利用され、特に、特定文字または特定文
字列を含むモジュール名とサブルーチン名とコメントと
を検索することによるプログラム構造図作成処理方式に
関する。
【0002】
【従来の技術】従来は、C言語のような構造記述言語で
は、Cソースプログラムからプログラム構造図を作成す
る処理方式はあったが、アセンブラ言語のような構造記
述言語でない言語ではプログラム構造図を作成する処理
方式はなかった。
【0003】また、アセンブラソースプログラムを記述
するときにコーディングルールを設定していなかったた
め、特定文字または特定文字列を検索することによるプ
ログラム構造図の作成処理方式はなかった。
【0004】従って、アセンブラソースプログラムの構
造図を作成するためには、アセンブラソースプログラム
の解析を行わなければならないが、従来の技術ではなか
った。
【0005】また、従来、スタックレベルを把握するた
めには、ディバッガを動作させてRAMの内容を見る
か、ソースプログラムから各自でサブルーチン呼び出し
命令を探し、スタックレベルを計算していた。
【0006】また、スタック操作命令がプログラム中の
どこにあるかが不明だったため、スタックの操作ミスに
よる、バグの元を発見するのに時間がかかっていた。
【0007】
【発明が解決しようとする課題】前述したように、従来
のプログラム構造図作成処理システムは、アセンブラソ
ースプログラムの構造図を作成するときには、アセンブ
ラソースプログラムの解析を行う必要があり作成できな
い欠点があった。また、従来、プログラム構造図を作成
するのは手作業であるため、作成が困難である欠点があ
った。また、スタックレベルを把握することは、プログ
ラム記述時にプログラマが管理しており、困難である欠
点があった。また、プログラミング時のスタック操作の
ミスによるバグが発見しにくい欠点があった。
【0008】本発明の目的は、前記の欠点を除去するこ
とにより、簡単に作成可能で、かつスタックレベルを把
握しスタック操作のミスによるバグを発見しやすくし
た、アセンブラソースプログラム構造図を作成するプロ
グラム構造図作成処理システムを提供することにある。
【0009】
【課題を解決するための手段】本発明は、アセンブルリ
ストファイルおよびデバイス情報ファイルを読み込みネ
ストリストファイルを生成するネストリストファイル作
成手段を備えたプログラム構造図作成処理システムにお
いて、前記アセンブルリストファイルは、モジュールと
サブルーチンの開始と終了を示す特定情報を含み、前記
デバイス情報ファイルは、デバイスごとのサブルーチン
呼び出し命令およびスタック操作命令についての情報を
含み、前記ネストリストファイル作成手段は、前記デバ
イス情報を参照しながら前記アセンブルリストファイル
中の特定情報を検索しモジュールとサブルーチンの開始
および終了を検出する手段、およびサブルーチン呼び出
し命令を検出する手段を含むことを特徴とする。
【0010】
【作用】アセンブルリストファイルは、モジュールとサ
ブルーチンの開始と終了を示す特定情報(文字または文
字列)を含み、デバイス情報ファイルはデバイスごとの
サブルーチン呼び出し命令およびスタック操作命令につ
いての情報を含んでいる。そして、ネストリストファイ
ル作成手段は、デバイス情報ファイルを参照しながらア
センブルリストファイル中の特定情報としてのモジュー
ルおよびサブルーチンの開始を検出し、検出したモジュ
ール名およびサブルーチン名をネストリストファイルに
出力する。また、スタック操作命令の開始を検出し検出
したスタックレベルをネストリストファイルに出力す
る。そして、終了の特定情報を検出することで一連の処
理を終わる。
【0011】従って、一連の処理が終了すると所望のプ
ログラム構造図を表すネストリストファイルが自動的に
生成される。
【0012】
【実施例】以下、本発明の実施例について図面を参照し
て説明する。
【0013】図1は本発明の一実施例の要部を示すブロ
ック構成図、図2はそのアセンブラソースプログラムの
一例を示す説明図、図3はそのデバイス情報ファイルの
一例を示す説明図、ならびに図4および図5はそれぞれ
そのネストリストファイルの一例を示す説明図である。
【0014】本実施例は、アセンブルリストファイル1
およびデバイス情報ファイル3を読み込みネストリスト
ファイル4を生成するネストリストファイル作成手段と
してのCPU2を備えたプログラム構造図作成処理シス
テムにおいて、本発明の特徴とするところの、アセンブ
ルリストファイル1は、モジュールとサブルーチンの開
始と終了を示す特定情報を含み、デバイス情報ファイル
3は、デバイスごとのサブルーチン呼び出し命令および
スタック操作命令についての情報を含み、CPU2は、
デバイス情報ファイル3を参照しながらアセンブルリス
トファイル1中の特定情報を検索しモジュールとサブル
ーチンの開始および終了を検出する手段としての開始検
出手段21および終了検出手段22と、サブルーチン呼
び出し命令を検出する手段としての呼び出し命令検出手
段23とを含んでいる。
【0015】そして、アセンブルリストファイル1は図
2に示すアセンブラソースプログラム1aのアセンブラ
出力であり、モジュールとサブルーチンの開始と終了を
示す特定情報としてコーディングルールが次のように決
められている。
【0016】・ メインモジュール名の先頭文字を半角
の「M」とする。
【0017】・ サブルーチン名の先頭文字を半角の
「S」とする。
【0018】・ 割り込みモジュール名の先頭文字を半
角の「I」にする。
【0019】・ 各モジュールの終了をコメント文で、
半角の「;END」とする。
【0020】図3は、このコーディングルールに基づい
て記述されたアセンブラソースプログラムの一例であ
る。
【0021】図2のアセンブラソースプログラム1aの
モジュールは、「MAIN」という名称のメインモジュ
ールと、「INT」という名称の割り込みモジュールが
ある。「MAIN」では「SUB1」および「SUB
2」という二つのサブルーチンを「CALL」命令で呼
び出している。さらに「SUB1」は「SUB11」と
いうサブルーチンを呼び出している。
【0022】「INT」では「SUB3」というサブル
ーチンを呼び出している。各モジュールの終了は「;E
ND」というコメントで示している。
【0023】また、デバイス情報ファイル3は、図3に
示すように、デバイス名31と、サブルーチン呼び出し
命令32と、スタック操作命令(スタックレベル)33
とを含んでいる。
【0024】さらに、ネストリストファイル4は、図4
に示すネストリストファイル4aのように、前記コーデ
ィングルールで記述されたアセンブラソースプログラム
1aの概要的なプログラム構造図を示し、図5に示すネ
ストファイルリスト4bのように、図4に示すプログラ
ム構造図に、スタックレベルとスタック操作命令を付加
した概要的なプログラム構造図を示す。
【0025】次に、本実施例の動作について説明する。
【0026】コーディングルールに基づいて記述された
アセンブラソースプログラム1aのアセンブルリストフ
ァイル1をCPU2に入力すると、CPU2はデバイス
情報ファイル3を参照しながら、特定情報としての特定
文字または特定文字列を検索しネストリストファイル4
を生成出力する。
【0027】始めに、図4に示すネストリストファイル
を生成する場合の第一動作例を図6に示す流れ図を参照
して説明する。なお、対象デバイスは図3の75Kとす
る。
【0028】CPU2はアセンブルリストファイル1の
先頭から1行ずつ構文解釈を行う。その際、デバイスに
固有のサブルーチン呼び出し命令32はデバイス情報フ
ァイル3を参照して文字または文字列を検索する。ま
ず、アセンブルリストファイル1から1行読み込み(ス
テップS1)、ファイルの終わりでないことを確認し
(ステップS2)、モジュール名を検索する(ステップ
S3)。モジュール名が検索できたらネストリストファ
イル4にモジュール名を出力する(ステップS4)。次
に、アセンブルリストファイル1から1行読み込み(ス
テップS5)、ファイルの終わりでないことを確認し
(ステップS6)、サブルーチン名またはモジュール終
了のコメントを検索する(ステップS7、S8)。サブ
ルーチン呼び出し命令が検索できたらネストリストファ
イル4に呼び出されるサブルーチン名を出力する(ステ
ップS9)。モジュール終了のコメントを検索したら、
モジュールの終了としてステップS1に戻り次のモジュ
ールを検索する。アセンブルリストファイル1が終了し
たら処理の終了とする。処理が終了すると、ネストリス
トファイル4aが生成される。
【0029】次に、図5に示すネストリストファイル4
bを生成する場合の第二動作例を図7に示す流れ図を参
照して説明する。
【0030】コーディングルールに基づいたアセンブラ
ソースプログラム1aのアセンブルリストファイル1を
入力ファイルとし、さらにスタックレベルの出力指定を
すると、第一動作例と同じように、モジュール名とサブ
ルーチン呼び出し命令とモジュール終了のコメントを検
索し、検索できたものについてはモジュール名、サブル
ーチン名をネストリストファイル4に出力する(ステッ
プS11〜S18)。
【0031】本第二動作例では、サブルーチン呼び出し
命令32を検索したときに(ステップS17)、ネスト
リストファイル4にサブルーチン名を出力するとともに
(ステップS18)、デバイス情報ファイル3を参照し
てサブルーチン呼び出し命令に対するスタックレベルを
ネストリストファイル4に出力する(ステップS1
9)。また、サブルーチン呼び出し命令を検索できなか
ったときに(ステップS17 )、その他のスタック操
作命令をデバイス情報ファイル3を参照して検索し(ス
テップS20)、スタック操作命令をネストリストファ
イル4に出力する(ステップS21)。そして、モジュ
ール終了コメントが検索されたならば(ステップS2
2)、ステップS11に戻り、ファイル終了になれば処
理を終わる。
【0032】この結果、アセンブラソースプログラム1
aの概要構造図に、スタックレベルとスタック操作命令
の付加されたネストリストファイル4bが出力される。
【0033】
【発明の効果】以上説明したように、本発明は、モジュ
ール名とサブルーチン名を特定文字または特定文字列を
含む名称とし、モジュールの終了を特定文字または特定
文字列を含むコメントで示すようにしたので、アセンブ
ラソースプログラムの構造図作成において、プログラム
の構造解析を行う必要がなくなり、アセンブラソースプ
ログラムの概要的な構造図を表示できる効果がある。ま
た、サブルーチン名をサブルーチンでの処理内容を表す
ような名称にすることで、さらに見やすいプログラム構
造図が得られる効果がある。
【0034】本発明により出力されるネストリストファ
イルは、ドキュメントに利用でき、また、スタックレベ
ルを出力指定して作成されたネストリストファイルは、
スタティックなスタックレベルが把握でき、また、スタ
ック操作命令を付加出力したネストリストファイルは、
プログラム中のスタック操作を行っている箇所が明確に
なり、プログラミング時のスタック操作のミスによるバ
グが発見しやすくなるなど、その効果は大である。
【図面の簡単な説明】
【図1】本発明の一実施例の要部を示すブロック構成
図。
【図2】そのアセンブラソースプログラムの一例を示す
説明図。
【図3】そのデバイス情報ファイルの一例を示す説明
図。
【図4】そのネストリストファイルの一例を示す説明
図。
【図5】そのネストリストファイルの他の例を示す説明
図。
【図6】その第一動作例を示す流れ図。
【図7】その第二動作例を示す流れ図。
【符号の説明】
1 アセンブルリストファイル 1a アセンブラソースプログラム 2 CPU 3 デバイス情報ファイル 4、4a、4b ネストリストファイル 21 開始検出手段 22 終了検出手段 23 呼び出し命令検出手段 31 デバイス名 32 サブルーチン呼び出し命令 33 スタック操作命令 S1〜S9、S11〜S22 ステップ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 アセンブルリストファイルおよびデバイ
    ス情報ファイルを読み込みネストリストファイルを生成
    するネストリストファイル作成手段を備えたプログラム
    構造図作成処理システムにおいて、 前記アセンブルリストファイルは、モジュールとサブル
    ーチンの開始と終了を示す特定情報を含み、 前記デバイス情報ファイルは、デバイスごとのサブルー
    チン呼び出し命令およびスタック操作命令についての情
    報を含み、 前記ネストリストファイル作成手段は、前記デバイス情
    報を参照しながら前記アセンブルリストファイル中の特
    定情報を検索しモジュールとサブルーチンの開始および
    終了を検出する手段、およびサブルーチン呼び出し命令
    を検出する手段を含むことを特徴とするプログラム構造
    図作成処理システム。
JP25220691A 1991-09-30 1991-09-30 プログラム構造図作成処理システム Pending JPH0588872A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25220691A JPH0588872A (ja) 1991-09-30 1991-09-30 プログラム構造図作成処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25220691A JPH0588872A (ja) 1991-09-30 1991-09-30 プログラム構造図作成処理システム

Publications (1)

Publication Number Publication Date
JPH0588872A true JPH0588872A (ja) 1993-04-09

Family

ID=17233980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25220691A Pending JPH0588872A (ja) 1991-09-30 1991-09-30 プログラム構造図作成処理システム

Country Status (1)

Country Link
JP (1) JPH0588872A (ja)

Similar Documents

Publication Publication Date Title
JP3062266B2 (ja) 支援装置
US5261103A (en) Method of and system for compiling source program
US20050039108A1 (en) Fast tag entry in a multimodal markup language editor
JPH0588872A (ja) プログラム構造図作成処理システム
JP3608864B2 (ja) 組版方法及び装置
JP3537260B2 (ja) リンク付文書検索表示システム
JPS59183441A (ja) 拡張言語のデバツグ処理方式
JP3194925B2 (ja) プログラム・デバツグ表示方法及びプログラム・デバッグ支援装置
JPH11259460A (ja) 文書処理装置
JPH10269066A (ja) 日本語によるシェル自動作成装置
JPH02151931A (ja) 中間言語テキストの再利用方式
JPH03233669A (ja) 文書作成装置
JP2946509B2 (ja) 対話型マニュアルの制御方法
JPH04287221A (ja) プログラム開発進捗管理装置
JPH01237834A (ja) ロードモジュールの編集表示方式
JPH01316842A (ja) バッチプログラム・デバッグツール
JP2004355072A (ja) 例外情報表示方法及び実施装置並びに処理プログラム
JPH03224035A (ja) データ処理装置
JPH0275021A (ja) 原始プログラム編集方法
JP2007026182A (ja) オブジェクト指向プログラミングの生産性を上げるエディタ
JPH0581008A (ja) 字下げ処理方式
JPH04237365A (ja) テキスト処理装置における差分検出方式および自動編集方式
JPH07104986A (ja) プログラム生成用ツール
JPH05120328A (ja) 機械翻訳装置
JPH05341983A (ja) 情報処理システム