JPH04316130A - プログラム生成方法 - Google Patents

プログラム生成方法

Info

Publication number
JPH04316130A
JPH04316130A JP8378391A JP8378391A JPH04316130A JP H04316130 A JPH04316130 A JP H04316130A JP 8378391 A JP8378391 A JP 8378391A JP 8378391 A JP8378391 A JP 8378391A JP H04316130 A JPH04316130 A JP H04316130A
Authority
JP
Japan
Prior art keywords
program
processing
prepared
information
section
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.)
Granted
Application number
JP8378391A
Other languages
English (en)
Other versions
JP3278860B2 (ja
Inventor
Nobuhiro Iogi
五百木 伸洋
Masaharu Nishikata
西方 政春
Masayoshi Tamura
田村 正義
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP8378391A priority Critical patent/JP3278860B2/ja
Publication of JPH04316130A publication Critical patent/JPH04316130A/ja
Application granted granted Critical
Publication of JP3278860B2 publication Critical patent/JP3278860B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、処理の概要を高水準言
語によって記述した情報からその処理プログラムを自動
的に生成するプログラム生成方式に係り、保守性の高い
プログラムの自動生成に係る。
【0002】
【従来の技術】処理概要を高水準言語によって入力しそ
の処理プログラムを自動的に生成するプログラム生成方
式では、対象とする偏微分方程式や解析領域を高水準言
語によって記述し、その情報から数値計算用のFORT
RANプログラムを自動的に生成する方式がある。この
場合の生成FORTRANプログラムは、各処理部にそ
の処理の内容を示すものがなく、その生成FORTRA
Nプログラムの保守性が考えられていない。
【0003】なお、この種の技術として関連するものに
は、たとえば特開昭62−212771号公報などがあ
る。
【0004】
【発明が解決しようとする課題】上記従来技術には、次
に示す問題がある。
【0005】処理に必要な情報を高水準言語によって入
力し、その処理プログラムを自動的に生成する際、生成
されたプログラム中の各処理部にその処理の内容を示す
ものがないため、生成されたプログラムの解読が困難で
あり、保守性が良くないという問題があった。
【0006】本発明の目的は、生成プログラム中の各処
理部の直前にその処理内容を示す説明を表示することに
よって生成プログラムの解読を容易にし、保守性を向上
させることにある。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、プログラム生成処理時に使用する内部情報をもとに
、生成プログラム中の各処理部についてその処理の対象
および処理条件を検出し、検出結果を生成プログラム中
にコメントとして出力する手段を用いる。
【0008】
【作用】プログラム生成処理時に使用する内部情報から
生成プログラム中の各処理部についてその対象物および
処理の条件を検出し、生成プログラム中の各処理部を生
成する直前にコメントとして出力することによって、生
成プログラム中の各処理部分において生成プログラムが
何を処理しているのかの解読が容易になり、保守性が向
上する。またコメントとして出力することによって実行
性能に影響しない。
【0009】
【実施例】以下、本発明の実施例について図を参照して
説明する。図1は本実施例の構成を示す図である。本発
明のプログラム生成装置102は、処理の概要を示す情
報を高水準言語によって記述した入力情報101から入
力情報が文法的に正しいか否かを検出する構文解析部1
03、プログラム生成処理に必要な内部の情報を格納す
る内部情報テーブル104を作成するテーブル作成処理
部105、テーブル作成処理部104で作成した情報か
らこれから出力するプログラムが何を処理するものであ
るのかを解析し生成プログラム112中に出力する処理
内容解析部106、内部情報テーブル104に格納され
ているデータをもとに生成プログラム112を出力する
プログラム生成処理部111から成る。処理内容解析部
106は、内部情報テーブル104の内容から処理の対
象物を解読する対象解読処理部107、処理の及ぶ範囲
を解読する範囲解読処理部108、処理をする上での条
件を解読する条件解読処理部109、解読した結果を生
成プログラム112中に出力する解読結果出力部110
から成る。
【0010】以下、実施例について説明する。
【0011】図2は本発明の物理現象の数値シミュレー
ションプログラムの自動生成を行うための入力情報を示
す図である。物理現象が起こっている領域の形状及びそ
の領域の格子分割に対する情報201、物理現象を支配
する基礎方程式202、および領域の境界で基礎方程式
が満足しなければならない境界条件203の情報を高水
準言語によって記述し入力する。
【0012】図3は図2の入力情報を高水準言語によっ
てを記述した例である。301は解析手法として差分法
を用いて解析をするという指定で、302は領域の形状
及び領域の格子分割の指定、303は数値シミュレーシ
ョンプログラムで使用する変数の宣言、304は境界条
件の指定、305は計算アルゴリズムの指定である。こ
の処理概要を記述した入力情報をもとに、構文解析処理
部103で入力情報のエラーチェックをしたのち、テー
ブル作成処理部105では、解析領域を処理プログラム
が等しくなる格子点同士の集合である小領域に分割し、
プログラム生成処理に必要な内部情報テーブル104を
作成する。
【0013】図4は小領域分割の結果を表す図である。 小領域は、境界に接していない格子点の集合401、x
方向下向きの境界に接している格子点の集合402、x
方向上向きの境界に接している格子点の集合403、y
方向下向きの境界に接している格子点の集合404、y
方向上向きの境界に接している格子点の集合405、x
方向下向きy方向下向きの境界に接している格子点の集
合406、x方向下向きy方向上向きの境界に接してい
る格子点の集合407、x方向上向きy方向下向きの境
界に接している格子点の集合408、x方向上向きy方
向上向きの境界に接している格子点の集合409の9個
の小領域に分割される。テーブル作成処理部105では
、解析領域を集合401から集合409に示す9個の小
領域に分割し、内部情報テーブル104を作成する。
【0014】図5は内部情報テーブル104の構成を示
す図である。内部情報テーブル104は、図4で示した
各小領域のインデクス情報(インデクス範囲)、領域種
別(内部領域であるか境界であるかの情報)、境界情報
(境界の場合はどの方向の境界であるかの情報)を格納
する領域分割情報テーブル502及び解析領域の各方向
のインデクスに対応する座標値を格納した座標管理テー
ブル503、求める変数(対象変数)と参照する変数(
参照変数)を格納した変数格納テーブル504から成る
【0015】図6は、各小領域に対する内部情報テーブ
ル104から生成プログラム上に処理の概要をコメント
として出力する処理内容解析部106の処理方式につい
て示した図である。対象解読処理部107では、変数格
納テーブル504に格納されている対象変数を参照し生
成される処理プログラムが何について計算するものであ
るかを検出し、範囲解読処理部108では、領域分割情
報テーブル502に格納されている小領域の範囲を示す
インデクス情報と各方向別のインデクスに対応する座標
値を格納する座標管理テーブル503の関係から生成さ
れる処理プログラムが処理する座標範囲を検出し、条件
解読処理部109では、領域分割情報テーブル502に
格納されている領域種別、境界情報から処理プログラム
が処理する領域の場所の情報を検出する。解読結果出力
部110では、対象解読処理部107、範囲解読処理部
108、条件解読処理部109で出力したデータを生成
プログラム中にコメントとして出力する。
【0016】図7は、処理内容解析処理部106で出力
するデータを示す図である。701は対象解析処理部1
07で処理対象の変数を検出した時の出力するデータ、
702は条件解読処理部109で領域が内部領域である
か境界領域であるかの種別を判断したのち出力するデー
タで、内部領域であった場合  ’INNER  RE
GION’、境界であった場合  ’BOUNDARY
  REGION’というデータを作成する。703は
、境界であった場合、条件解読処理部109で境界方向
を検出したの出力するデータで、x方向境界であった場
合  ’X  BOUNDARY’、y方向境界であっ
た場合  ’Y  BOUNDARY’、x方向、y方
向ともに境界であった場合  ’XY  BOUNDA
RY’というデータを作成する。704は、範囲解読処
理部108で、内部情報テーブル104に格納されてい
る小領域のインデクス情報と、各インデクスに対する座
標値を格納した座標管理テーブル503から処理中の小
領域の座標範囲を検出したのち出力するデータである。 解読結果出力部110では、701、702、703の
データを生成プログラム上に出力する。
【0017】図8は、生成プログラムの1例を示す図で
ある。生成プログラム801は指定301に示す入力情
報の集合401に対する処理部分である。求めるべき変
数が’FAI’であることを示すコメント802を出力
したのち、集合401はどの境界にも接していない内点
領域であるため内点領域であるという意味のコメント8
03を出力し、さらにインデクス範囲がx方向、y方向
ともに1から6であるので、コメント804、805に
示す座標範囲を出力する。806は集合402の処理部
分の生成プログラムである。求めるべき変数が’FAI
’であることを示すコメント807を出力したのち、集
合402はx方向の境界に接している領域であることか
ら、境界であるという意味のコメント808を出力し、
さらにx方向境界の領域であるという意味のコメント7
09を出力する。インデクス範囲はx方向が1から6、
y方向が0から0であるのでコメント810、811を
出力する。
【0018】上記実施例は一例を示したが、一般には上
記の処理の及ぶ範囲および処理をする上での条件をまと
めて処理条件と呼んでよく、本発明を不等式で表現され
るような処理条件をもったプログラムに適用できる。
【0019】
【発明の効果】本発明によれば、処理の概要を記述する
高水準言語によって入力した情報からその処理プログラ
ムを自動的に生成する際、その処理プログラムの各処理
部に対し処理の対象および処理条件を生成プログラム上
にコメントとして出力するため、生成プログラムの解読
が容易になり、保守性が向上する。
【図面の簡単な説明】
【図1】本発明の一実施例であるプログラム生成装置の
構成を示す図である。
【図2】物理現象の数値シミュレーションをするための
解析条件を示す図である。
【図3】入力条件の一例を高水準言語によって示す図で
ある。
【図4】解析領域を離散式が等しくなる格子点単位に分
割した領域分割結果の例を示す図である。
【図5】プログラム生成時に使用する内部情報テーブル
の構成例を示す図である。
【図6】処理内容解析部の処理概要を例示する図である
【図7】処理内容解析部の出力データを例示する図であ
る。
【図8】生成プログラムの一例を示す図である。
【符号の説明】
101…入力情報、 104…内部情報テーブル、 105…テーブル作成処理部、 106…処理内容解析部、 107…対象解読処理部、 108…範囲解読処理部、 109…条件解読処理部、 110…解読結果出力部、 801…生成プログラム、 806…生成プログラム。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】処理の内容を高水準言語によって記述され
    た入力情報から処理プログラムを自動的に生成するプロ
    グラム生成方式において、生成処理中に使用する内部情
    報から生成する処理プログラムの処理の対象および処理
    条件を検出し、生成プログラム中にその検出結果をコメ
    ントとして表示することを特徴とするプログラム生成方
    式。
JP8378391A 1991-04-16 1991-04-16 プログラム生成方法 Expired - Fee Related JP3278860B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8378391A JP3278860B2 (ja) 1991-04-16 1991-04-16 プログラム生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8378391A JP3278860B2 (ja) 1991-04-16 1991-04-16 プログラム生成方法

Publications (2)

Publication Number Publication Date
JPH04316130A true JPH04316130A (ja) 1992-11-06
JP3278860B2 JP3278860B2 (ja) 2002-04-30

Family

ID=13812231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8378391A Expired - Fee Related JP3278860B2 (ja) 1991-04-16 1991-04-16 プログラム生成方法

Country Status (1)

Country Link
JP (1) JP3278860B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101466243B (zh) * 2007-12-21 2012-06-13 深圳富泰宏精密工业有限公司 流水线的降温装置

Also Published As

Publication number Publication date
JP3278860B2 (ja) 2002-04-30

Similar Documents

Publication Publication Date Title
CN112286958A (zh) 数据库查询表达式的处理方法和系统
JPH04316130A (ja) プログラム生成方法
JPH09288580A (ja) ソースプログラムの最適化装置および最適化方法
JPS6115236A (ja) オブジエクトリストの部分作成方法
JP2612355B2 (ja) プログラム作成処理システム
JPH025136A (ja) 言語処理プログラムのエラー処理方式
JP2001125793A (ja) コンパイラシステム及びコンパイル方法並びに記録媒体
JPS63318605A (ja) Ncパ−トプログラム生成装置
JP3075012B2 (ja) レイアウト検証装置及びレイアウト検証システム
JPH0793144A (ja) プログラム解析装置
JPH05204699A (ja) デバッグ時識別子探索方式
JP2002222099A (ja) プログラム開発支援装置、記録媒体、及びプログラム
JPH0239241A (ja) コンパイラ
JPH06236261A (ja) 手続き型言語プログラム・コンポーネントの分離方式
JPH05241837A (ja) 規則集合生成装置
JPH01133176A (ja) 論理回路ブロック切出しシステム
JPH04116721A (ja) システム定義ディレクティブの解析方式
JPH05216683A (ja) 非言語依存のファイル化手順自動生成方法
JPS63174130A (ja) 値が未設定の変数名の検出方式
JPH01193972A (ja) プログラムのチューニング支援システム
JPS6188354A (ja) オペレ−テイングシステムの周辺機器サポ−ト範囲の変更方法
JPH0425942A (ja) ループの最適化処理方式
JPS63128438A (ja) コンパイラの外部手続呼出し形式検査方法
JPH0728671A (ja) テストカバレージ測定におけるソースプログラムの差分管理方式
JPH05158667A (ja) プログラム保守支援装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees