JPH05282138A - ドキュメンタの文書生成方法 - Google Patents

ドキュメンタの文書生成方法

Info

Publication number
JPH05282138A
JPH05282138A JP7954592A JP7954592A JPH05282138A JP H05282138 A JPH05282138 A JP H05282138A JP 7954592 A JP7954592 A JP 7954592A JP 7954592 A JP7954592 A JP 7954592A JP H05282138 A JPH05282138 A JP H05282138A
Authority
JP
Japan
Prior art keywords
character string
program
documenter
intermediate text
expression
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.)
Withdrawn
Application number
JP7954592A
Other languages
English (en)
Inventor
Takeshi Kimura
武志 木村
Hiroyuki Komiyama
弘之 込山
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP7954592A priority Critical patent/JPH05282138A/ja
Publication of JPH05282138A publication Critical patent/JPH05282138A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 ドキュメンタの文書生成方法に関し、ドキュ
メンタプログラムの性能向上とオブジェクトサイズの減
少を図ることを目的としている。 【構成】 ドキュメンタプログラムの起動によりコンパ
イラを起動し(a)、次にコンパイラがソースプログラ
ムを参照して構文チェックと中間テキストの生成を行う
ときソースプログラム中の式文字列を式文字列編集領域
に抽出して式文字列編集領域の式文字列データを中間テ
キストに出力し(b)、次にドキュメンタプログラムが
中間テキストを参照して文書を生成する(c)ようにし
た。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ドキュメンタの文書生
成方法に関する。ドキュメンタプログラムは、ソースプ
ログラムに記述された処理の流れを図化した文書を出力
するものである。コンパイラは、ドキュメンタプログラ
ムが参照する中間テキストをソースプログラムの構文チ
ェックを行いながら生成する。
【0002】ドキュメンタプログラムによる文書生成を
効率良く行うためには、ドキュメンタプログラムの性能
を向上させ、オブジェクトサイズを減少させることが必
要である。
【0003】
【従来の技術】従来のドキュメンタプログラムの文書生
成方法を図12に示す。図12において、1はドキュメ
ンタプログラム、2はドキュメンタプログラム1により
起動されるコンパイラ、3はコンパイラ2およびドキュ
メンタプログラム1が参照するソースプログラム、4は
コンパイラ2が生成し、ドキュメンタプログラム1が参
照する中間テキスト、5はドキュメンタプログラム1が
生成する文書である。
【0004】以下、文書生成の概要を図中の番号を参照
して説明する。 (1) ドキュメンタプログラム1を起動する。 (2) ソースプログラム3の構文チェックと中間テキス
ト4を生成するために、ドキュメンタプログラム1がコ
ンパイラ2を起動する。 (3) コンパイラ2がソースプログラム3を参照して、
構文チェックと中間テキスト4の生成を行う。 (4) ドキュメンタプログラム1が中間テキスト4とソ
ースプログラム3を参照して文書5を生成する。 (5) ドキュメンタプログラム1を終了する。
【0005】中間テキスト4には、ソースプログラム3
に記述された命令語やデータ名の情報が設定されてい
る。ソースプログラム3に記述した式についての情報
は、従来の中間テキスト4では一般に四つ組と呼ばれる
形式となっている。その例を図13に示す。ソースプロ
グラム3と中間テキスト4の説明を図13中の番号を参
照して説明する。 (1) ?A,?B,?C,?D,?Eは変数名を意味す
る。:=は代入演算子を意味する。図13のソースプロ
グラム3は右辺の演算結果を左辺の?Aに代入する処理
である。 (2) ?Bと?Cの値を加算して、演算結果を作業域W
に設定する処理を意味する中間テキスト4である。 (3) 作業域Wの値から?Dの値を減算して、演算結果
を作業域Wに設定する処理を意味する中間テキスト4で
ある。 (4) 作業域Wの値に?Eの値を加算して、演算結果を
?Aに設定する処理を意味する中間テキスト4である。
なお、*印は次の中間コードへのポインタを意味する。
最終中間コードの場合は16進のX´FFFFが設定さ
れる。
【0006】この中間テキスト4は、実行形式のオブジ
ェクトプログラムを生成する場合に都合のよい形式とな
っている。これらの情報だけでは、ドキュメンタプログ
ラム1はソースプログラム3の文字列を復元して編集す
ることができない、そこでドキュメンタプログラム1
は、中間テキスト4だけでなくソースプログラム3も参
照している。
【0007】
【発明が解決しようとする課題】このような従来のドキ
ュメンタの文書生成方法にあっては、文書を生成する際
に、中間テキストだけでなく、ソースプログラムも参照
しているため、文書が出力されるまでにコンパイラとド
キュメンタプログラムでソースプログラムの2度読みが
発生する。その結果、ドキュメンタプログラムの処理が
複雑化し、ドキュメンタプログラムの性能低下とオブジ
ェクトサイズの増大の原因となっている。本発明は、こ
のような従来の問題点に鑑みてなされたものであって、
ドキュメンタプログラムの性能向上とオプジェクトサイ
ズの減少を図ることを目的としている。
【0008】
【課題を解決するための手段】図1は本発明の原理説明
図である。図1において、(a)はドキュメンタプログ
ラムの起動によりコンパイラを起動するステップ、
(b)はコンパイラがソースプログラムを参照して構文
チェックと中間テキストの生成を行うときソースプログ
ラム中の式文字列を式文字列編集領域に抽出して式文字
列の編集領域の式文字列データを中間テキストに出力す
るステップ、(c)はドキュメンタプログラムが中間テ
キストを参照して文書を生成するステップである。
【0009】
【作用】本発明においては、コンパイラがソースプログ
ラムを参照して構文チェックと中間テキストの生成を行
うとき、ソースプログラム中の式文字列を式文字列編集
領域に抽出し、式文字列編集領域の式文字列データを中
間テキストに出力するようにしたため、ドキュメンタプ
ログラムは中間テキストだけを参照して文書を生成する
ことができる。
【0010】すなわち、ソースプログラムの2度読みが
発生せず、ディスクからの入力回数が減少する。また、
中間テキスト中には式文字列データが格納されているた
め、ドキュメンタプログラムで式情報を編集する必要が
なくなる。その結果、ドキュメンタプログラムの性能向
上とオブジェクトサイズの減少を図ることができる。
【0011】
【実施例】以下、本発明の実施例を図面に基づいて説明
する。図2〜図11は本発明の一実施例を示す図であ
る。図2において、11はドキュメンタプログラムであ
り、ドキュメンタプログラム11はコンパイラ12を起
動し、また、中間テキスト13のみを参照して、文書1
4で生成する。
【0012】コンパイラ12は、ソースプログラム15
を参照して構文チェックと中間テキスト13の生成を行
う。この場合、ソースプログラム13中の式文字列を式
文字列編集領域に抽出し、式文字列編集領域のデータを
中間テキスト13に出力する。中間テキスト13には式
文字列データ16が格納される。次に、式文字列の抽出
について説明する。
【0013】ソースプログラム15に記述される式に
は、IF文などの条件判断の条件式や代入式がある。ソ
ースプログラム15中の条件式や代入式の文字列を抽出
すれば式文字列の情報を得ることができる。IF文に書
かれた条件判断文の抽出方法を図3に示す。図3中の式
文字列編集領域17とは、式解析中に式を構成する字句
を読み込み順に格納する作業領域である。図3のIF文
は、データ名?Aの領域に設定されているデータが10
00と等しいか否かを判定して、等しければ処理Aを実
行する処理である。解析手順としては、IFからTHE
Nの文字列を命令語・データ名・演算子などの字句に分
解する。そして、左から右方向に字句を読み込んで、字
句の前後関係から記述が構文規則に沿ったものであるか
を判別する。ここで、IF文の条件判断の式文字列は、
IFとTHENの中でのみ出現することが予測できる。
つまり、IFが出現した時点で式文字列の開始が判定で
きる。そして、THENが読み込まれた時に式文字列の
終了位置と判定できる。この抽出手順についての説明を
図3の番号を参照して以下に行う。 (1) IFの出現により、式文字列の式文字列編集
領域17への設定処理を開始する。 (2) 〜(4) 読み込んだ字句を式文字列編集領域17に順
に設定する。 (5) THENの出現により、式文字列編集領域1
7への字句設定処理を終了する。そして、式文字列の情
報として式文字列編集領域17のデータを中間テキスト
13に出力する。
【0014】前記抽出手順をフローチャートで示すと図
4のようになる。図4において、ステップS1で1字句
を読み込み、ステップS2でIFの出現を判別する。I
Fが出現しないときは、終了となり、IFが出現したと
きはステップS3で1字句(例えば、?A、=、100
0)を読み込み、ステップS5で式文字列編集領域17
に順次設定する。
【0015】ステップS4でTHENが出現したら、ス
テップS6で中間テキスト13へ式文字列のデータを出
力する。以上の処理は、IF文に限らずWHILE文や
FOR文などのループ制御文の条件式でも同様である。
次に、代入文の式文字列の抽出方法を図5に示す。
【0016】これは、データ名?Aの領域に1000+
2000−3000の演算結果を設定する処理であ
る。:=が代入演算記号である。この場合、式文字列の
先頭は、:=の前に存在するデータ名?Aとなる。:=
が出現した時点で式文字列の開始が判断できる。そし
て、式文字列の終端は、データ名・定数値、演算子以外
のものが出現した位置である。この抽出手順についての
説明を図5の番号を参照して以下に行う。 (1) ?Aの読込みを行う。 (2) :=の出現により、式文字列の式文字列編集
領域17への設定処理を開始する。 (3) :=の直前に読み込まれた?Aを式文字列編
集領域17に設定する。 (4) :=の文字列を式文字列編集領域17に設定
する。 (5) 〜(9) 読み込んだ字句を式文字列編集領域17に設
定する。 (10) IFの出現により、式文字列編集領域17へ
の字句設定処理を終了する。そして、式文字列の情報と
して式文字列編集領域17のデータを中間テキスト13
に出力する。
【0017】図5は、代入文の次にIF文が存在する例
であり、IFが出現した時点で式文字列の抽出処理を終
了する。また、代入文が続いている場合は、データ名が
2つ続いた時点で抽出処理を終了する。この例を図6に
示す。この抽出手順についての説明を図6の番号を参照
して以下に行う。 (1) ?Aの読込みを行う。 (2) :=の出現により、式文字列の式文字列編集
領域17への設定処理を開始する。 (3) :=の直前に読み込まれた?Aを式文字列編
集領域17に設定する。 (4) :=の文字列を式文字列編集領域17に設定
する。 (5) 〜(7) 読み込んだ字句を式文字列編集領域17に設
定する。 (8) 読み込んだ字句が?Cであり、直前に読み込
んだ字句が100なのでデータ名が2つ続いたため代入
式の終端となる。そして、式文字列の情報として式文字
列編集領域17のデータを中間テキスト13に出力す
る。
【0018】ここで、図5の代入式の抽出手順と図6の
式文字列の抽出手順をまとめて図7のフローチャートに
示す。図7において、ステップS11で1字句の読み込
みを行い、ステップS12で読み込んだ1字句の退避を
行う。そして、ステップS13で再び1字句の読み込み
を行い、ステップS14で:=の出現を判別する。出現
しないときは、終了とし、出現したときは、ステップS
15で退避させた文字列と:=を式文字列編集領域17
に設定する。
【0019】そして、ステップS16で1字句を順次読
み込み、ステップS19で式文字列編集領域17に順次
設定する。ステップS17でIFなどが出現したとき
は、ステップS20で式文字列編集領域17に設定した
式文字列データを中間テキスト13に出力する。また、
ステップS18で数値などデータ名が2つ続いたとき
は、同様にステップS20で式文字列編集領域17に設
定した式文字列データを中間テキスト13に出力する。
【0020】このように本実施例においては、ソースプ
ログラム15の2度読みが発生せずディスクからの入力
回数が減少する。また、中間テキスト13中には、文書
14に出力する形式で式文字列データ16が格納されて
いるため、ドキュメンタプログラム11での式情報を編
集する必要がなくなる。こうして生成された中間テキス
ト13の例を、図8に、文書14の例を図9および図1
0に、それぞれ示す。なお、図11はソースプログラム
15の例を示す。
【0021】したがって、本実施例においては、ドキュ
メンタプログラム11の性能向上およびオブジェクトサ
イズの減少を図ることができる。
【0022】
【発明の効果】以上説明してきたように、本発明によれ
ば、コンパイラが出力する中間テキストにソースプログ
ラムに記述された式文字列を持たせるようにしたため、
文書の生成において、ドキュメンタプログラムの性能向
上およびオブジェクトサイズの減少を図ることができ
る。
【図面の簡単な説明】
【図1】本発明の原理説明図
【図2】本発明の一実施例を示す図
【図3】条件式の抽出手順の説明図
【図4】条件式の抽出手順のフローチャート
【図5】代入式の抽出手順の説明図
【図6】式文字列の抽出手順の説明図
【図7】代入式および式文字列の抽出手順のフローチャ
ート
【図8】中間テキストの例を示す図
【図9】文書の例を示す図
【図10】文書の例を示す図
【図11】ソースプログラムの例を示す図
【図12】従来例を示す図
【図13】中間テキスト生成の説明図
【符号の説明】
11:ドキュメンタプログラム 12:コンパイラ 13:中間テキスト 14:文書 15:ソースプログラム 16:式文字列データ 17:式文字列編集領域

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】ドキュメンタプログラムの起動によりコン
    パイラを起動し(a)、次に、コンパイラがソースプロ
    グラムを参照して構文チェックと中間テキストの生成を
    行うときソースプログラム中の式文字列を式文字列編集
    領域に抽出して式文字列編集領域の式文字列データを中
    間テキストに出力し(b)、次にドキュメンタプログラ
    ムが中間テキストを参照して文書を生成する(c)こと
    を特徴とするドキュメンタの文書生成方法。
JP7954592A 1992-04-01 1992-04-01 ドキュメンタの文書生成方法 Withdrawn JPH05282138A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7954592A JPH05282138A (ja) 1992-04-01 1992-04-01 ドキュメンタの文書生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7954592A JPH05282138A (ja) 1992-04-01 1992-04-01 ドキュメンタの文書生成方法

Publications (1)

Publication Number Publication Date
JPH05282138A true JPH05282138A (ja) 1993-10-29

Family

ID=13692973

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7954592A Withdrawn JPH05282138A (ja) 1992-04-01 1992-04-01 ドキュメンタの文書生成方法

Country Status (1)

Country Link
JP (1) JPH05282138A (ja)

Similar Documents

Publication Publication Date Title
JPS61282935A (ja) プログラムにおける属性割当て検査方法及び装置
JPS6375835A (ja) 目的コ−ド、プログラム・リスト及び設計文書を生成する装置
JPH05282138A (ja) ドキュメンタの文書生成方法
JPH0877196A (ja) 文書情報抽出装置
JPH03233670A (ja) テキストデータ変換方式
JP3003459B2 (ja) プログラム作成支援装置
JP3329476B2 (ja) かな漢字変換装置
JPH08101771A (ja) ソースプログラムの汎用チェックシステム
JP3265762B2 (ja) 画像処理装置
JPH08190561A (ja) 文書修正装置
JPS61234434A (ja) プログラム編集方式
JP2908184B2 (ja) テキストファイル編集方法及び装置
JPH05233553A (ja) データ編集方式
JPH05158765A (ja) C言語プログラム差分情報取得方式
JPH05120226A (ja) コマンドパラメータ置換方式
JPH0546373A (ja) フローチヤート作成処理装置
JPH03171252A (ja) 文字処理装置
JPH0540638A (ja) 語彙解析編集方式
JPH04248624A (ja) プログラム変換処理装置
JPH07141347A (ja) 日本語文字列区分け方法
JPH05127885A (ja) 処理フロー図変換方式
JPH04237365A (ja) テキスト処理装置における差分検出方式および自動編集方式
JPH08202538A (ja) プログラム作成装置
JPH0769830B2 (ja) 展開制御機能をもつプログラム翻訳装置
JPH02199534A (ja) フローチャート生成処理装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990608