JPH10214193A - データ処理装置およびデータ処理方法 - Google Patents

データ処理装置およびデータ処理方法

Info

Publication number
JPH10214193A
JPH10214193A JP9017149A JP1714997A JPH10214193A JP H10214193 A JPH10214193 A JP H10214193A JP 9017149 A JP9017149 A JP 9017149A JP 1714997 A JP1714997 A JP 1714997A JP H10214193 A JPH10214193 A JP H10214193A
Authority
JP
Japan
Prior art keywords
compiler
attribute information
computer
program
register
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
JP9017149A
Other languages
English (en)
Inventor
Atsuo Mitsui
淳夫 三井
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.)
Ando Electric Co Ltd
Original Assignee
Ando Electric Co 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 Ando Electric Co Ltd filed Critical Ando Electric Co Ltd
Priority to JP9017149A priority Critical patent/JPH10214193A/ja
Publication of JPH10214193A publication Critical patent/JPH10214193A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 【課題】 仕様の異なるデータ処理装置のレジスタ類属
性情報をコンパイラ本体から分離することにより、コン
パイラ本体の作成工数及び試験工数の低減を図ること。 【解決手段】 仕様の異なるデータ処理装置のレジスタ
類属性情報記憶部1と該装置のレジスタ類属性情報を選
択する選択器6と各装置共通のコンパイラ制御部3およ
びコンパイルプログラム記憶部7とを設ける。ある装置
用の高級言語で記述されたソースプログラムをコンパイ
ラでコンパイルする際に、対象とする装置を指定するこ
とで、選択器6は指定の装置のレジスタ類属性情報をレ
ジスタ類属性情報記憶部1から選択する。コンパイラ本
体は、選択したレジスタ類属性情報を元にコンパイルを
行い、指定のコンピュータ用オブジェクトプログラムを
生成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、高級言語で記述
されたソースプログラムから、実行可能なオブジェクト
プログラムへのコンパイルを行う処理方法およびその処
理装置に関するものである。
【0002】
【従来の技術】図2において、A21はコンピュータA
用にコンピュータA専用の高級言語で記述されたソース
プログラム、A22はコンピュータA専用コンパイラ、
A23はコンピュータA専用オブジェクトプログラムで
ある。また、B21はコンピュータB用にコンピュータ
B専用の高級言語で記述されたソースプログラム、B2
2はコンピュータB専用コンパイラ、B23はコンピュ
ータB専用オブジェクトプログラムである。この図2を
用いて従来の方法について説明する。従来はソースプロ
グラムA21からコンピュータA専用オブジェクトプロ
グラムA23を得るために、A22のコンピュータA専
用コンパイラによりソースプログラムA21をコンパイ
ルしていた。また、ソースプログラムB21からコンピ
ュータB専用オブジェクトプログラムB23を得るため
に、B22のコンピュータB専用コンパイラによりソー
スプログラムB21をコンパイルしていた。コンピュー
タA及びコンピュータB用のコンパイラは各々別個に作
成し、試験を行う必要があった。従って、装置の種類が
n個あるとすると(作成時間+全機能の試験時間)×n
のコンパイラ開発時間が必要であった。(nは装置の種
類の数)
【0003】
【発明が解決しようとする課題】装置毎に専用のコンパ
イラを用いる方式では、オブジェクトプログラムが使用
されるコンピュータ毎に固有のコンパイラを作成しなけ
ればならない。また、コンパイラの機能項目全てについ
て、全コンパイラを試験しなければならない。このよう
な場合、コンピュータの種類が増えるにつれて、作業工
数も増やす必要があった。この発明は、このような事情
に鑑み、コンパイラの使用される各コンピュータのレジ
スタ類の属性情報とコンパイラ本体とを分離し、異なる
複数のコンピュータに対して、共通のコンパイラ本体と
個別のレジスタ類属性情報との組み合わせで対処するこ
とにより、従来の専用コンパイラの作成及び試験に必要
だった工数を低減することを目的とする。
【0004】
【課題を解決するための手段】この発明では、上記の目
的を達成するため、図1に示すような、オブジェクトプ
ログラムが用いられる全てのコンピュータのレジスタ類
属性情報を含んだレジスタ類属性情報記憶部1と、これ
を選択する選択器6と、ソースプログラム記憶部2に格
納されているソースプログラムからオブジェクトプログ
ラム記憶部4に格納されるオブジェクトプログラムへと
コンパイルする処理を実際に行う、コンパイラ制御部3
と、データ処理装置に依存しない共通のコンパイラプロ
グラムを格納するコンパイルプログラム記憶部7とを備
え、装置指定信号5はコンパイラ制御部3を通じ選択器
6に伝えられる。選択器6は与えられた装置に対応する
レジスタ類の属性情報をコンパイラ制御部3に返す。上
記の様な構成によれば、次のような作用をする。ユーザ
ー、または、システムより装置指定信号5がコンパイラ
制御部3に与えられる。コンパイラ制御部3は選択器6
に指定されたコンピュータの種類を伝える。選択器6
は、レジスタ類属性情報記憶部1より、指定されたコン
ピュータのレジスタ類の属性情報を得る。選択器6は求
めたレジスタ類の属性情報をコンパイラ制御部3に送
る。コンパイラ制御部3は選択器6から伝えられたアド
レスのレジスタ類属性情報を用いて、コンパイルプログ
ラム記憶部7に格納されているコンパイルプログラムに
基づきソースプログラム記憶部2の中のソースプログラ
ムから、指定コンピュータ用のオブジェクトプログラム
を生成し、これをオブジェクトプログラム記憶部4に格
納する。
【0005】
【発明の実施の形態】以下、本発明の一実施形態によ
る、コンパイルを行うデータ処理装置を図面を参照しつ
つ説明する。図1は、同実施形態によるデータ処理装置
9のブロック図であり、以下に述べるような符号1〜8
の各ブロックを包含している。この図において符号1は
コンパイルを行った後のオブジェクトプログラムを適用
する各コンピュータのレジスタ類属性情報を含んだレジ
スタ類属性情報記憶部である。符号2はソースプログラ
ム記憶部であり、高級言語で記述されたソースプログラ
ムを格納している。符号7はコンパイルプログラム記憶
部であり、ソースプログラム2をコンパイルするための
コンパイルプログラムが納められている。符号3はコン
パイラ制御部であり、上記コンパイルプログラム記憶部
7からコンパイルプログラムを読み込んで、それに従っ
てコンパイル処理の制御を行う。符号4はオブジェクト
プログラム記憶部であり、コンパイラ3によりソースプ
ログラム2をコンパイルした結果得られるオブジェクト
プログラムが納められている。符号5はレジスタ類属性
情報記憶部1より択一的に選択するコンピュータを示
す、装置指定信号である。符号6は選択器であり、上記
装置指定信号5によって指定されたコンピュータのレジ
スタ類属性情報をレジスタ類属性情報記憶部1より選択
して読み出す。符号8はコンパイル処理を行うコンパイ
ラ本体であり、コンパイラ制御部3とコンパイルプログ
ラム記憶部7とを包含する。
【0006】続いて、レジスタ類属性情報記憶部1の内
部のデータ構成の1例について、図3に基づいて説明す
る。レジスタ類属性情報記憶部1の中にコンピュータA
のレジスタ類属性情報A31と、コンピュータBのレジ
スタ類属性情報B31とが用意されている。コンピュー
タAのレジスタ類属性情報A31はレジスタ類属性情報
記憶部1内のアドレス100と101と102の場所に
格納されており、図3のアドレス100のデータにおい
て、左から順に、コンピュータAが備えるレジスタの言
語上の名前(register1)、対応するレジスタのアドレ
ス(00000000)、最小値(00000001)、最大値(000001
00)を示している。ここで最大値と最小値とは上記のレ
ジスタに設定可能な値の範囲の最大値と最小値とを示し
ている。コンピュータBのレジスタ類属性情報B31は
レジスタ類属性情報記憶部1内のアドレス200と20
1と202の位置に同様の形式で格納されている。
【0007】次に図3を用いて、具体的なコンパイルの
実行例を説明する。最初に、ソースプログラムA32を
コンピュータA用にコンパイルする場合の実行例を示
す。まず、コンパイラ制御部3は、装置指定信号5によ
り、コンパイルした結果のオブジェクトプログラムを実
行する対象の装置として、コンピュータAを指定され
る。しかる後に、コンパイラ制御部3はコンピュータA
を示す信号を選択器6に対して出力する。この信号を受
けて、選択器6は、コンピュータAのレジスタ類属性情
報A31が格納されている先頭アドレス100をコンパ
イラ制御部3に出力する。コンパイラ制御部3は、選択
器6から返されたレジスタ類属性情報A1の先頭アドレ
ス100を記憶しておく。ソースプログラムA32に
は、レジスタ”register1”に値”100”を
送る命令が記載されている。コンパイラ制御部3はレジ
スタ類属性情報A1の中を、アドレス100から順に一
致する名前(この場合、register1)が無いか検索を行
い、名前が何もないレジスタ類属性情報を読み出すと検
索を終了する。
【0008】アドレス100に格納されているレジスタ
類の名前は”register1”で、ソースプログラ
ムA32と一致するため、コンパイラ制御部3は、この
アドレスが示すデータを用いてコンパイルを行い、コン
ピュータA用オブジェクトプログラムA34を生成す
る。ちなみに、この”LOAD”命令は、第1引数で与
えられたアドレスに、第2引数で与えられた値を送る命
令である。次に、ソースプログラムとして同じA32が
与えられ、コンピュータB用にコンパイルをする場合の
実行例を示す。コンパイラ制御部3は、装置指定信号5
により、コンピュータBを対象装置として指定される。
コンパイラ制御部3はコンピュータBを示す信号を選択
器6に出力する。選択器6は、コンピュータBのレジス
タ類属性情報B31が格納されている先頭アドレス20
0をコンパイラ制御部3に出力する。コンパイラ制御部
3は、このレジスタ類属性情報B1の先頭アドレス20
0を記憶する。続いて、コンパイラ制御部は”regi
ster1”に一致する、アドレス200のレジスタ類
属性情報を用いてコンパイルを行い、コンピュータB用
オブジェクトプログラムB33を生成する。同じソース
プログラムA32が与えられたとしても、生成されるオ
ブジェクトプログラムは、対象の装置によって、上述の
様に異なるものとなる。
【0009】次に、ソースプログラムA33が与えら
れ、コンピュータA用にコンパイルするようにコンパイ
ラ制御部3に指示が与えられた場合には、前述と同様の
経緯によりコンパイラ制御部3はコンピュータA用オブ
ジェクトプログラムA35を生成する。次に、同じソー
スプログラムA33が与えられ、コンピュータB用にコ
ンパイルするようにコンパイラ制御部3に指示が与えら
れた場合の実行例を示す。コンパイラ制御部3は、コン
ピュータBが指定されたことを選択器6に伝える。選択
器6は、コンピュータBのレジスタ類属性情報B31の
先頭アドレス200をコンパイラ制御部3に伝える。コ
ンパイラ制御部3はこのアドレス200を保持する。ソ
ースプログラムA33に記述されている”regist
er2”を、コンパイラ制御部3はアドレス200から
順にレジスタ類属性情報内を検索するが、最後尾の名前
のないレジスタ類属性情報(アドレス202)まで読み
出しても一致しないため、コンパイラ制御部3はコンパ
イルできない旨のエラーメッセージをユーザーに通知し
て処理を終了する。
【0010】この発明の上記の実施形態によれば、コン
パイラ本体はオブジェクトプログラムを使用する対象の
コンピュータが増えてもただひとつ作成すればいい。す
なわち、作成時間短縮効果は従来のn倍(nは装置の
数)となる。コンパイラ本体の試験についても、レジス
タ類属性情報で与えられた項目は従来の装置専用コンパ
イラと同様に試験する必要はあるが、レジスタ類属性情
報によらない項目は装置の数によらず共通の試験を行え
ば良い。したがって、従来の技術での試験時間(コンパ
イラ本体の全機能の試験時間×n)に比べ、この発明で
の作業時間は、装置間共通のコンパイラ本体の機能の試
験時間+(装置毎に異なるコンパイラ本体の機能の試験
時間×n(nは装置の種類の数)となる。例えば、装置
共通の項目と装置毎に異なる項目の試験時間が50%ず
つとして従来の全試験時間がsとすると、試験時間の短
縮効果は従来の(s×n)÷(s×0.5+s×0.5
×n)=(n÷0.5(1+n))倍であり、装置が5
台だとすると5÷0.5×(1+5)=5÷3=1.6
倍となる。
【0011】
【発明の効果】以上、説明したように、この発明による
データ処理装置によれば、コンパイルした結果のオブジ
ェクトプログラムが用いられるコンピュータごとが持つ
レジスタ属性情報をコンパイラプログラム本体と分離し
て、様々のコンピュータに対して、共通のコンパイラ本
体と個別のレジスタ類属性情報とを組み合わせてコンパ
イルを行うことにより、従来の汎用コンパイラを用いた
時に必要であった各コンパイラの作成および試験の工数
を低減することができる。
【図面の簡単な説明】
【図1】 本発明の一実施形態による、コンパイラ本体
を含むデータ処理装置のブロック構成図である。
【図2】 従来技術によるデータの流れを示す図であ
る。
【図3】 本発明の一実施形態によるコンパイル処理に
おけるデータの例である。
【符号の説明】
1 レジスタ類属性情報記憶部 2 ソースプログラム記憶部 3 コンパイラ制御部 4 オブジェクトプログラム記憶部 5 装置指定信号 6 選択器 7 コンパイルプログラム記憶部 8 コンパイラ本体 A21〜A23、B21〜B23 従来技術によるコン
パイル方式 A31,B31 レジスタ類属性情報の例 A32,A33 ソースプログラムの例 A34,B33,A35 各コンピュータ用オブジェク
トプログラムの例

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 高級言語で記述されたソースプログラム
    をオブジェクトプログラムへとコンパイルを行うデータ
    処理装置において、 該オブジェクトプログラムが使用されるコンピュータ内
    のレジスタ類が持つ属性情報を格納している記憶手段
    と、 上記コンパイルを行う制御手段と、 を備えることを特徴とするデータ処理装置。
  2. 【請求項2】 高級言語で記述されたソースプログラム
    をオブジェクトプログラムへとコンパイルを行うデータ
    処理方法において、 該オブジェクトプログラムが使用されるコンピュータご
    とに該コンピュータ内部のレジスタ類が持つ属性情報を
    参照してコンパイルすることを特徴とするデータ処理方
    法。
JP9017149A 1997-01-30 1997-01-30 データ処理装置およびデータ処理方法 Withdrawn JPH10214193A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9017149A JPH10214193A (ja) 1997-01-30 1997-01-30 データ処理装置およびデータ処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9017149A JPH10214193A (ja) 1997-01-30 1997-01-30 データ処理装置およびデータ処理方法

Publications (1)

Publication Number Publication Date
JPH10214193A true JPH10214193A (ja) 1998-08-11

Family

ID=11935942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9017149A Withdrawn JPH10214193A (ja) 1997-01-30 1997-01-30 データ処理装置およびデータ処理方法

Country Status (1)

Country Link
JP (1) JPH10214193A (ja)

Similar Documents

Publication Publication Date Title
EP0709773B1 (en) System and method for generating target language code utilizing an object oriented code generator
JP3612294B2 (ja) デバッグ方法およびデバッグ装置
JP2000035893A (ja) デ―タ処理システムの配列の静的初期化方法、デ―タ処理方法、並びにデ―タ処理システム及びその制御手順をコンピュ―タに実行させるプログラムを記憶したコンピュ―タ読み取り可能な記憶媒体
JP2000242501A (ja) 情報処理装置、情報処理方法及びプログラム書込み装置
JPH0926884A (ja) バイナリ操作を必要とするタスク中に必要なフロー情報を使用可能とする方法および装置
JPH0766342B2 (ja) プログラムテスト装置
JPH10214193A (ja) データ処理装置およびデータ処理方法
JP3327674B2 (ja) プログラム翻訳装置及び方法
JPH08286896A (ja) ソフトウェア開発方法及びソフトウェア開発システム
JPH0659908A (ja) プログラム実行装置
JPH11242598A (ja) コンパイル方法およびコンパイル装置ならびにオブジェクトプログラム実行方法およびオブジェクトプログラム実行装置ならびにプログラム記憶媒体
JPH0461380B2 (ja)
JP2827724B2 (ja) プログラムデバッグ処理方法
KR100293932B1 (ko) 소프트웨어 코드인 이미지의 후처리 방법
JP3018783B2 (ja) コンパイル方式
JP2003330731A (ja) プロジェクト管理ファイル生成装置
JP2002342126A (ja) プログラム実行装置及びプログラム実行方法
JPH02245934A (ja) データ処理装置
JP2751423B2 (ja) プログラムデバッグ処理方式
JP2000330775A (ja) 組み込みシステム開発方法
JPH05127945A (ja) プログラム実行状況解析方式
JPH0997182A (ja) プログラム変換装置およびデバッグ装置
JP2003140891A (ja) アプリケーション開発装置、その方法およびそのコンピュータ・プログラム
JPH09190364A (ja) プログラムのデバッグ方法
JPH10207738A (ja) 言語処理システム

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040406