JP3279706B2 - オンライン・コンパイル方式 - Google Patents

オンライン・コンパイル方式

Info

Publication number
JP3279706B2
JP3279706B2 JP06572293A JP6572293A JP3279706B2 JP 3279706 B2 JP3279706 B2 JP 3279706B2 JP 06572293 A JP06572293 A JP 06572293A JP 6572293 A JP6572293 A JP 6572293A JP 3279706 B2 JP3279706 B2 JP 3279706B2
Authority
JP
Japan
Prior art keywords
program
source program
information processing
storage means
compiler
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.)
Expired - Fee Related
Application number
JP06572293A
Other languages
English (en)
Other versions
JPH06282441A (ja
Inventor
孝憲 武井
英明 塩田
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji 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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP06572293A priority Critical patent/JP3279706B2/ja
Publication of JPH06282441A publication Critical patent/JPH06282441A/ja
Application granted granted Critical
Publication of JP3279706B2 publication Critical patent/JP3279706B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラミング装置に
格納されているソースプログラムをマシンコードから成
る目的プログラムに変換して、これを情報処理装置のメ
モリ(プログラムメモリ)へ格納するオンライン・コン
パイル方式に関する。
【0002】
【従来の技術】情報処理装置で実行されるプログラム
は、一般に、「C」,「FORTRAN」,「COBO
L」などの、いわゆる高水準言語(high level languag
e)と言われるプログラミング言語(programming languag
e)で記述される。
【0003】これは、高水準言語が、人間が使う言語
(自然言語)や概念に近い要素に基づいて設計されたも
のであり、プログラムの生産性に優れているからであ
る。これらの高水準言語で記述されたプログラムは、コ
ンパイラ(compiler) によりマシンコードから成るプロ
グラムに翻訳され、情報処理装置内の主メモリへロード
(load) される。
【0004】情報処理装置は、このロードされたマシン
コードから成るプログラムを順次実行する。上記のよう
なプログラミング言語で記述されたプログラムは、コン
パイラの入力となるのでソースプログラム(source pro
gram) と呼ばれ、コンパイラの出力となるマシンコード
から成るプログラムは目的プログラム(target progra
m) と呼ばれる。
【0005】ところで、このようなソースプログラムの
設計、製作、試験、及び保守などのプログラミング支援
を行う方式は、このプログラミング支援を行う支援プロ
グラム(支援ツール)が搭載される装置に応じて、セル
フ支援方式とクロス支援方式の2つに分類される。
【0006】セルフ支援方式は、プログラミング支援を
プログラムを実行する情報処理装置そのものに搭載され
た支援ツールにより行う方式であり、クロス支援方式
は、プログラミング支援をプログラムを実行する情報処
理装置とは別のプログラミング装置に搭載された支援ツ
ールより行う方式である。
【0007】図17は、上記クロス支援方式のハードウ
エア構成図である。同図に示すように、クロス支援方式
においては、ソースプログラム41の作成、修正、及び
コンパイル等を行うプログラミング装置40と、上記ソ
ースプログラム41をコンパイルして得られるマシンコ
ードプログラム51を実行する情報処理装置50とが伝
送ライン60で接続される。
【0008】この方式においては、ソースプログラム4
1はプログラミング装置40に格納されており、このソ
ースプログラム41はプログラミング装置40に実装さ
れている不図示のコンパイラによりマシンコードから成
るマシンコードプログラム(目的プログラム)51に変
換される。そして、このマシンコードプログラム51
は、伝送ライン60を経由して情報処理装置50に伝送
され、情報処理装置50内に格納される。
【0009】このクロス支援方式は、プログラミング装
置40が情報処理装置50から分離されているので、プ
ログラミング装置40をパーソナルコンピュータなどの
安価なハードウエア・プラットフォーム上に構築でき、
また、情報処理装置50にソースプログラム41を格納
するための大容量のメモリを準備する必要がないなどの
特長により、自動化制御装置などの小型、単純、高信頼
を求められる情報処理装置に多く用いられる。
【0010】次に、図18は、従来技術によるクロス支
援方式のソフトウエア構成図である。プログラミング装
置40で作成されたソースプログラム41は、プログラ
ミング装置40内のコンパイラ42によりマシンコード
プログラム51にコンパイルされる。そして、プログラ
ミング装置40内の転送プログラム43は、このマシン
コードプログラム51を伝送ライン60を介し情報処理
装置50へ転送する。
【0011】情報処理装置50内の転送プログラム52
は、上記マシンコードプログラム51を受け取り、これ
をプログラムメモリ53へ格納する。そして、情報処理
装置50内の演算ユニット54は、このプログラムメモ
リ53からマシンコードプログラム51を順次読み出し
て実行する。
【0012】
【発明が解決しようとする課題】上述のようなクロス支
援方式では、プログラム装置40内のコンパイラ42が
ソースプログラム41をコンパイルしてマシンコードプ
ログラム51を生成し、さらに、このマシンコードプロ
グラム51を情報処理装置50へ転送するという、2段
階の処理を直列に行っている。このため処理に時間がか
かると同時に、マシンコードプログラム51を、プログ
ラミング装置40内に保持しなければならず、多くのメ
モリを必要とするという欠点があった。
【0013】またプログラムミング装置40は、ソース
プログラム41とマシンコードプログラム51を個々に
格納するため、これらのプログラム41,51を対応付
けて管理しなければならず、この管理が煩雑となる。
【0014】また、情報処理装置50のプログラム・イ
ンタフェースがマシンコードであるため、情報処理装置
50のハードウエアの変更などで演算ユニット54が実
行可能なマシンコードが変更になった場合、プログラミ
ング装置40に実装するコンパイラ42を変更しなけれ
ばならないという欠点もあった。
【0015】本発明は、クロス支援方式のオンライン・
コンパイル方式においてプログラミング装置のメモリ容
量を小さくできることを第1の目的とし、プログラミン
グ装置においてプログラム管理を容易にすることを第2
の目的とする。
【0016】また、さらに、プログラミング装置側で情
報処理装置が実行可能なマシンコードに依存しないでソ
ースプログラムのプログラミングができることを第3の
目的とすると共に、従来よりもコンパイル処理を高速化
することを第4の目的とする。
【0017】
【課題を解決するための手段】図1は、本発明の原理説
明図である。本発明はソースプログラムの作成を行うプ
ログラミング装置1と、上記ソースプログラムをコンパ
イルして得られる目的プログラムを実行する情報処理装
置2とを備える。
【0018】そして、プログラミング装置1は、ソース
プログラムを格納するソースプログラム記憶手段1A
と、該ソースプログラム記憶手段1Aからソースプログ
ラムを読み出して、このソースプログラムを情報処理装
置2に転送する転送手段(1B)とを有する。
【0019】また、情報処理装置2は、プログラミング
装置1の転送手段1Bから転送されてくるソースプログ
ラムを所定単位で受信する受信手段2Aと、該受信手段
2Aにより受信されたソースプログラムを一時的に格納
する記憶手段2Bと、該記憶手段2Bからソースプログ
ラムを上記所定単位毎に順次読み出して、そのソースプ
ログラムをコンパイルするコンパイラ2Cと、該コンパ
イラ2Cによって生成された目的プログラムを格納する
目的プログラム記憶2Dとを有する。上記のような構成
において、前記情報処理装置2の前記受信手段2Aは、
前記ソースプログラムを特定の文脈単位に分割して受け
取って前記記憶手段2Bに格納し、前記コンパイル2C
は、上記特定の文脈単位毎にコンパイルを行う。 上記特
定の文脈単位は、例えば、請求項2記載のように関数で
あってもよく、あるいは請求項3記載のように予め定め
られた区切り記号によって区切られる単位であってもよ
い。
【0020】上記構成において、例えば、請求項4記載
のように、前記情報処理装置2の前記記憶手段2Bは、
第1の記憶手段2B−1と第2の記憶手段2B−2から
成り、前記受信手段2Aは、受信するソースプログラム
を、所定単位毎に、上記第1の記憶手段2B−1と上記
第2の記憶手段2B−2に交互に格納し、前記コンパイ
ラ2Cは、上記第1の記憶手段2B−1と上記第2の記
憶手段2B−2からソースプログラムを上記所定単位毎
に交互に読み出して、そのソースプログラムのコンパイ
ルを行うような構成にしてもよい。
【0021】
【0022】
【0023】
【作用】プログラミング装置1は、ソースプログラム記
憶手段1Aに格納されている自装置で作成したソースプ
ログラムを、転送手段1Bにより情報処理装置2へ転送
する。
【0024】情報処理装置2は、このソースプログラム
を受信手段2Aにより、適当な単位に分割して受け取
り、順次、記憶手段2Bに格納する。コンパイラ2C
は、このようにして記憶手段2Bに格納されるソースプ
ログラムを、上記の単位毎にコンパイルし、このコンパ
イルにより得られるマシンコードを目的プログラム記憶
手段2Dに格納する。このとき前記受信手段2Aは、前
記ソースプログラムを特定の文脈単位に分割して受け取
って前記記憶手段2Bに格納し、前記コンパイル2C
は、上記特定の文脈単位毎にコンパイルを行う。
【0025】したがって、プログラミング装置1に目的
プログラム(マシンコード・プログラム)を格納するメ
モリを設けることなく、クロス支援方式のオンライン・
コンパイルを実現できる。
【0026】また、このため、プログラミング装置1
は、メモリを節約できると共に、ソースプログラムのみ
を管理すればよいので、プログラム管理が容易になる。
さらに、情報処理装置2はソースプログラムを受け取っ
て、コンパイル・実行を行うので、プログラミング装置
で情報処理装置2の中央処理装置が実行するマシンコー
ドに依存せずにソースプログラムのプログラミングを行
える。
【0027】また、さらに、記憶手段2Bを、それぞれ
個別にアクセスできる第1の記憶手段2B−1と第2の
記憶処理2B−2とから構成するようにすることによ
り、受信手段2Aによるソースプログラムの受信と、コ
ンパイラ2Cによるソースプログラムのコンパイルとを
並行処理できるので、コンパイルを従来よりも高速に処
理できる。
【0028】
【実施例】以下、図面を参照しながら、本発明の実施例
を説明する。図2は、本発明によるクロス支援方式の情
報処理装置のソフトウエア構成図である。
【0029】同図において、プログラミング装置110
は、ソースプログラム111を作成する装置であり、作
成したソースプログラム111を転送プログラム112
により情報処理装置120へ転送する。尚、このソース
プログラム111は、プログラミング装置110内に実
装されている不図示の所定の記憶装置内に格納されてい
る。
【0030】情報処理装置120は、上記プログラミン
グ装置110から転送されてくるソースプログラム11
1を受信し、このソースプログラム111をRAM(ラ
ンダム.アクセス・メモリ)等から成るバッファメモリ
122に格納する転送プログラム121を備えている。
また、さらに、上記バッファメモリ122からソースプ
ログラム111を読み出してマシンコード・プログラム
(目的プログラム)に変換し、これをRAM(ランダム
・アクセス・メモリ)等から成るプログラムメモリ12
4に格納するコンパイラ123、及びそのプログラムメ
モリ124上のマシンコード・プログラムを読み出し実
行する演算ユニット125も備えている。
【0031】一般に、プログラム言語で記述されたプロ
グラムは、プログラムとして意味のある処理単位、例え
ば関数単位で分割してコンパイルすることができる。本
実施例においては、プログラミング装置110内の転送
プログラム112は、ソースプログラム111をこの処
理単位毎に分割して、情報処理装置120へ転送する。
そして、情報処理装置120内のコンパイラ123は、
この処理単位毎にコンパイルを行い、このコンパイルに
より得られたマシンコードを、逐次、プログラムメモリ
124に格納していく。
【0032】図2に示す、バッファメモリ122の状態
は、情報処理装置120の転送プログラム121がソー
スプログラム111の最初の代入関数「(:=」の終了
を示す「)」を受け取った時点でソースプログラム11
1の受信を中断し、情報処理装置120内のコンパイラ
123がバッファメモリ122内のソースプログラム1
11をコンパイルして、このコンパイルにより得られた
マシンコードをプログラムメモリ124へ格納した状態
を示している。
【0033】情報処理装置120の転送プログラム12
1は、上述のようにしてマシンコードのプログラムメモ
リ124の格納を終了すると、ソースプログラム111
の受け取りを再開し、以降同様の処理を繰り返す。図3
は、コンパイラ123によりソースプログラム111全
てのコンパイルが終了した状態を示している。
【0034】次に、図4は、本発明の第2の実施例のク
ロス支援方式の情報処理装置のソフトウエア構成図であ
る。この実施例において、プログラミング装置110の
構成は、上述した図2に示す第1の実施例と同様である
が、情報処理装置120の構成は、上記第1の実施例と
一部異なっている。
【0035】すなわち、この実施例においては、情報処
理装置120は、2個の転送バッファメモリ122a,
122bを備えている。そして、この構成の違いに伴っ
て、情報処理装置120内の転送プログラム121′及
びコンパイラ123′の機能は、上記第1の実施例とは
異なっている。
【0036】すなわち、この実施例では、実施例処理装
置120の転送プログラム121′は、最初の代入関数
を受け取ると、まずバッファメモリ122aへ格納す
る。コンパイラ123′は、この転送バッファメモリ1
22a内のソースプログラム111をコンパイルし、こ
のコンパイルにより得られたマシンコードをプログラム
メモリ124へ格納する。この処理と並行して、転送プ
ログラム121′は次の代入関数を受け取って、これ
を、今度は、転送バッファメモリ122bへ格納する。
そして、コンパイラ123′は、今度は、バッファメモ
リ122bから上記代入関数を読み出してコンパイルを
行い、このコンパイルにより、得られたマシンコードを
プログラムメモリ124に格納する。
【0037】このように、この図4に示す第2の実施例
では、バッファメモリを2個設ける構成にすることによ
り、ソースプログラム111の転送とそのコンパイルを
並列に処理することで、処理を高速化することができ
る。
【0038】次に、図5は、本発明の第3実施例のクロ
ス支援方式の情報処理装置のソフトウエア動作図であ
る。同図に示す情報処理装置120″の転送プログラム
120″は、ソースプログラム111を解析し、このソ
ースプログラム111に現れるオペランドや関数をスタ
ックメモリ126へ格納する。そして、コンパイラ12
3″はスタックメモリ126から上記オペランドや関数
を読み出してコンパイルする。
【0039】図6及び図7は、この図5に示す方式によ
る転送プログラム121″及びコンパイラ123″の動
作を説明するフローチャートである。まず、図6は、情
報処理装置120″の転送プログラム121″の動作を
説明するフローチャートである。
【0040】同図のフローチャートに沿って、転送プロ
グラム121″の動作を説明すると、転送プログラム1
21″は、まず、プログラミング装置110から送られ
てくるソースプログラム111を受け取りながら(S1
1)、オンラインでソースプログラムを解析する。すな
わち転送プログラム121″は、関数やオペランドの区
切りを表す空白や「(」,「)」などの分離文字を捜
し、これらの分離文字で区切られた関数及びオペランド
を検出して(S12,YES)、これらをスタックメモ
リ126へ格納する(S13)。次に、転送プログラム
121″は、上記のようにしてスタックメモリ126へ
格納した関数やオペランドのコンパイルを行うため、コ
ンパイラを呼び出す(S14)。
【0041】そして、以上のステップS11〜S14の
処理を、ソースプログラム111の全ステートメントを
受け取ったと判別するまで(S15,YES)、繰り返
し行う。
【0042】コンパイラ123″は、このようにして転
送プログラム121″によりスタックメモリ126に格
納された関数やオペランドを読み出して以下図7のフロ
ーチャートに示す処理を開始する。
【0043】すなわち、コンパイラ123″は、スタッ
クメモリ126からデータを格納順に読み出し(S2
1)、このデータが、関数なら(S22,YES)、何
もせず直ちに処理を終了する。一方オペランドなら(S
23,YES)、スタックメモリ126をさかのぼり、
直前に格納されている関数を捜し(S24)、この関数
と上記オペランドを、対応するマシンコードに変換し、
これをプログラムメモリ124へ格納する(S25)。
そして、上記オペランドをスタックメモリ126から消
去して(S26)、処理を終了する。
【0044】一方、上記ステップS21で読み出したデ
ータが関数の終了を示す「)」であるときには(S2
7,YES)、スタックメモリ126の直前の関数まで
の内容をスタックメモリ126から消去して(S2
8)、処理を終了する。
【0045】次に、このような転送プログラム121″
及びコンパイラ123″により行われるオンライン・コ
ンパイルの処理を、図8乃至図16を参照しながら、よ
り詳細に説明する。
【0046】尚、ソースプログラム111は、図8に示
す形式になっているものとする。転送プログラム12
1″は、まず、図5に示すように、プログラミング装置
110から、「(Prog 」までを受け取り、この関数「(P
rog 」をスタックメモリ126へ格納する。
【0047】尚、「(Prog 」は、第1オペランドで示す
番号のユーザプログラムの開始を宣言する関数である。
次に、転送プログラム121″は、図8に示すように、
プログラミング装置110から分離文字、「1」を受け
取り、これをスタックメモリ126へ格納して、コンパ
イラ123″を呼び出す。コンパイラ123″は、これ
を、上記直前の関数「(Prog 」の第1オペランドと判断
し、これを「Dcl _Prog1」命令のマシンコードに変換
し、これをプログラムメモリ124に格納する。そし
て、スタックメモリ126内の「1」(第1オペラン
ド)を消去する。
【0048】続いて、転送プログラム121″は、図9
に示すように、プログラミング装置110からデータ
「(:=」を受け取り、この関数「(:=」をスタック
メモリ126へ格納する。尚、この関数「(:=」は、
第1オペランドのデータを第2オペランドへ転送する関
数である。
【0049】さらに続いて、転送プログラム121″
は、図10に示すように、プログラミング装置110か
らデータ「(+」を受け取り、この関数「(+」をスタ
ックメモリ126へ格納する。尚、この関数「(+」
は、第1オペランド以降のオペランドを順次加算する関
数である。
【0050】次に、転送プログラム121″は、図11
に示すように、プログラミング装置110から分離文字
「A」を受け取り、これをスタックメモリ126へ格納
し、コンパイラ123″を呼び出す。コンパイラ12
3″は、これを、スタックメモリ126から読み出す
と、上記直前の関数「(+」の第1オペランドと判断
し、これを「Load A」命令のマシンコードに変換し、こ
れをプログラムメモリ126に格納する。そして、スタ
ックメモリ126内の第1オペランド「A」を消去す
る。
【0051】続いて、転送プログラム121″は、図1
2に示すように、情報処理装置120から分離文字
「B」を受け取り、これをスタックメモリ126へ格納
し、コンパイラ123″を呼び出す。コンパイラ12
3″は、これをスタックメモリ126から読み出すと、
上記直前の関数「(+」の第2オペランドと判断し、こ
れを「+B」命令のマシンコードに変換して、プログラ
ムメモリ126に格納する。そして、コンパイラ12
3″はスタックメモリ126内の第2オペランド「B」
を消去する。
【0052】次に、転送プログラム121″は、図13
に示すように、プログラミング装置110から分離文字
「)」を受け取り、これをスタックメモリ126へ格納
し、コンパイラ123″を呼び出す。コンパイラ12
3″は、スタックメモリ126から 「)」を読み出す
と、これが関数の終了を示していると判断し、上記直前
の関数「(+」をスタックメモリ126から消去する。
【0053】次に、転送プログラム121″は、図14
に示すように、プログラミング装置110から分離文字
「C」を受け取り、これをスタックメモリ126へ格納
してからコンパイラ123″を呼び出す。コンパイラ1
23″は、「C」をスタックメモリ126から読み出す
と、これが上記直前の関数「(:=」の第オペランド
であると判断し、これを「Store C」命令のマシンコー
ドに変換してプログラムメモリ124に格納する。
【0054】そして、コンパイラ123″は、図15に
示すようにスタックメモリ126から第2オペランド
「C」を消去する。続いて、転送プログラム121″
は、図16に示すように、プログラミング装置110か
ら分離文字「)」を受け取り、これをスタックメモリ1
26へ格納した後、コンパイラ123″を呼び出す。コ
ンパイラ123″は、これをスタックメモリ126から
読み出すと、これが上記直前の関数「(Prog」の終了を
示しているものと判断し、これを「End Prog 」命令
のマシンコードに変換し、これをプログラムメモリ12
に格納する。そして、コンパイラ123″は上記直前
の関数「(Prog」をスタックメモリ126から消去す
る。
【0055】以上、説明したように、本実施例によれ
ば、情報処理装置にコンパイラを搭載したため、プログ
ラミング装置でコンパイルする必要がなく、このため、
従来のようにプログラミング装置内にコンパイラやマシ
ンコードプログラムを格納するためのメモリを設ける必
要が無くなり、プログラミング装置を簡単に構成でき、
かつ処理を高速化できる。また、プログラミング装置に
マシンコードプログラムを持たないので、プログラミン
グ装置でのプログラム管理が簡単になる。
【0056】また、本実施例では、情報処理装置側にコ
ンパイラを搭載し、ソースプログラムの転送と同時にコ
ンパイルを行うようにしたため、情報処理装置でのソー
スプログラムの受信処理及びコンパイル処理を高速化で
きる。
【0057】さらに、本実施例では、情報処理装置が受
信するソースプログラムの構文解析を行い、ソースプロ
グラムの区切りを見つけて、この区切り毎に転送とコン
パイルを行うため、転送及びコンパイルのためのバッフ
ァメモリの容量が小さくてすみ、情報処理装置のメモリ
を大幅に増加させることなく、高速にコンパイル処理す
ることができる。
【0058】尚、上記実施例では、プログラミング装置
110は、ソースプログラム111を文字コードの形式
で情報処理装置120へ転送するようにしているが、関
数やオペランド単位にコード化して転送するようにして
もよい。この方法の場合、転送情報量が小さくなるの
で、ソースプログラムの転送を高速に行うことができ、
この結果としてコンパイルも高速化できる。
【0059】また、本実施例を、情報処理装置のプログ
ラムメモリに格納されているマシンコード・プログラム
(目的プログラム)を元のソースプログラムに逆変換す
るオンライン・逆コンパイルに転用することも容易に可
能である。
【0060】
【発明の効果】以上説明したように、本発明によれば、
情報処理装置にコンパイラを搭載し、プログラミング装
置から情報処理装置へは、従来のように目的プログラム
(マシンコード・プログラム)ではなくソースプログラ
ムを送るようにしたので、プログラミング装置のメモリ
を節約できると共にその構成を簡素にでき、さらには、
プログラム管理も容易なものとすることができる。
【0061】また、プログラミング装置によりソースプ
ログラムを作成する際、情報処理装置が実行するマシン
コードに依存することなくプログラミングが行える。さ
らに、情報処理装置内の受信するソースプログラムを格
納するための記憶手段をそれぞれ互いに独立にアクセス
可能な2つの記憶手段により構成することにより、ソー
スプログラムの受信とソースプログラムのコンパイルを
並列処理できるので、コンパイルを従来よりも高速に行
える。さらに、情報処理装置は、受信するソースプログ
ラムを特定の文脈単位で受け取り、この特定の文脈単位
毎に転送とコンパイルを行うため、転送及びコンパイル
のためのバッファメモリの容量が小さくてすみ、情報処
理装置のメモリを大幅に増加させることなく、高速にコ
ンパイル処理することができる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の第1実施例によるクロス支援方式の情
報処理装置のソフトウエア構成図である。
【図3】コンパイラによるソースプログラムのコンパイ
ルが終了した状態を示す図である。
【図4】本発明の第2実施例によるクロス支援方式の情
報処理装置のソフトウエア構成図である。
【図5】本発明の第3実施例によるクロス支援方式の情
報処理装置のソフトウエア構成図である。
【図6】第3実施例の情報処理装置の転送プログラムの
動作を説明するフローチャートである。
【図7】第3実施例の情報処理装置のコンパイラの動作
を説明するフローチャートである。
【図8】第3実施例の情報処理装置によるオンライン・
コンパイル処理を説明する図(その1)である。
【図9】第3実施例の情報処理装置によるオンライン・
コンパイル処理を説明する図(その2)である。
【図10】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その3)である。
【図11】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その4)である。
【図12】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その5)である。
【図13】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その6)である。
【図14】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その7)である。
【図15】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その8)である。
【図16】第3実施例の情報処理装置によるオンライン
・コンパイル処理を説明する図(その9)である。
【図17】クロス支援方式のハードウエア構成図であ
る。
【図18】従来技術によるクロス支援方式のソフトウエ
ア構成図である。
【符号の説明】
1 プログラミング装置 1A ソースプログラム記憶手段 1B 転送手段 2 情報処理装置 2A 受信手段 2B 記憶手段 2B−1 第1の記憶手段 2B−2 第2の記憶手段 2C コンパイラ 2D 目的プログラム記憶手段
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平4−55945(JP,A) 特開 昭56−90341(JP,A) 実開 昭62−151606(JP,U) 実開 昭61−172344(JP,U) 発明協会公開技報公技番号92−4830号 (58)調査した分野(Int.Cl.7,DB名) G06F 9/45

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 ソースプログラムの作成を行うプログラ
    ミング装置(1)と、 上記ソースプログラムをコンパイルして得られる目的プ
    ログラムを実行する情報処理装置(2)とを備え、 前記プログラミング装置(1)は、 ソースプログラムを格納するソースプログラム記憶手段
    (1A)と、 該ソースプログラム記憶手段(1A)からソースプログ
    ラムを読み出して、このソースプログラムを前記情報処
    理装置(2)に転送する転送手段(1B)と、 を有し、 前記情報処理装置(2)は、 前記プログラミング装置(1)の前記転送手段(1B)
    から転送されてくるソースプログラムを所定単位で受信
    する受信手段(2A)と、 該受信手段(2A)により受信されたソースプログラム
    を一時的に格納する記憶手段(2B)と、 該記憶手段(2B)からソースプログラムを上記所定単
    位毎に順次読み出して、そのソースプログラムをコンパ
    イルするコンパイラ(2C)と、 該コンパイラ(2C)によって生成された目的プログラ
    ムを格納する目的プログラム記憶手段(2D)と、を有し、 前記情報処理装置(2)の前記受信手段(2A)は、 前記ソースプログラムを特定の文脈単位に分割して受け
    取って前記記憶手段(2B)に格納し、 前記コンパイラ(2C)は、上記特定の文脈単位毎にコ
    ンパイルを行う、 ことを特徴とするオンライン・コンパイル方式。
  2. 【請求項2】 前記特定の文脈単位は、関数であること
    を特徴とする請求項1記載のオンライン・コンパイル方
    式。
  3. 【請求項3】 前記特定の文脈単位は、予め定められた
    区切り記号によって区切られる単位であることを特徴と
    する請求項1記載のオンライン・コンパイル 方式。
  4. 【請求項4】 前記情報処理装置(2)の前記記憶手段
    (2B)は、 第1の記憶手段(2B−1)と第2の記憶手段(2B−
    2)から成り、 前記受信手段(2A)は、 受信するソースプログラムを、所定単位毎に、上記第1
    の記憶手段(2B−1)と上記第2の記憶手段(2B−
    2)に交互に格納し、 前記コンパイラ(2C)は、上記第1の記憶手段(2B
    −1)と上記第2の記憶手段(2B−2)からソースプ
    ログラムを上記所定単位毎に交互に読み出して、そのソ
    ースプログラムのコンパイルを行う、 ことを特徴とする請求項1乃至3記載のオンライン・コ
    ンパイル方式。
JP06572293A 1993-03-24 1993-03-24 オンライン・コンパイル方式 Expired - Fee Related JP3279706B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06572293A JP3279706B2 (ja) 1993-03-24 1993-03-24 オンライン・コンパイル方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06572293A JP3279706B2 (ja) 1993-03-24 1993-03-24 オンライン・コンパイル方式

Publications (2)

Publication Number Publication Date
JPH06282441A JPH06282441A (ja) 1994-10-07
JP3279706B2 true JP3279706B2 (ja) 2002-04-30

Family

ID=13295201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06572293A Expired - Fee Related JP3279706B2 (ja) 1993-03-24 1993-03-24 オンライン・コンパイル方式

Country Status (1)

Country Link
JP (1) JP3279706B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040051023A (ko) * 2002-12-11 2004-06-18 엘지전자 주식회사 웹 기반 운영 체제 컴파일 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
発明協会公開技報公技番号92−4830号

Also Published As

Publication number Publication date
JPH06282441A (ja) 1994-10-07

Similar Documents

Publication Publication Date Title
JP4130713B2 (ja) プログラム変換装置
US5590331A (en) Method and apparatus for generating platform-standard object files containing machine-independent code
US6003095A (en) Apparatus and method for demand loading a dynamic link library
US6327702B1 (en) Generating a compiled language program for an interpretive runtime environment
US6983458B1 (en) System for optimizing data type definition in program language processing, method and computer readable recording medium therefor
KR20020087384A (ko) N-베이스형 산술식의 최적화
JP2000035893A (ja) デ―タ処理システムの配列の静的初期化方法、デ―タ処理方法、並びにデ―タ処理システム及びその制御手順をコンピュ―タに実行させるプログラムを記憶したコンピュ―タ読み取り可能な記憶媒体
JP4652680B2 (ja) コンパイル方法および装置、ならびにコンパイラ
JP3279706B2 (ja) オンライン・コンパイル方式
KR100305097B1 (ko) 최적화에 있어서 인터럽트 처리의 경감을 실현하는 컴파일러 및 그의 최적화 방법
CN113031952A (zh) 深度学习模型的执行代码的确定方法、装置及存储介质
JP3461185B2 (ja) ロードモジュールへのソースコード行番号登録方法および装置
JP2000122876A (ja) 情報処理装置
US7076780B2 (en) Application program interface for a computer program
JPH04268928A (ja) エミュレーション装置及び半導体装置
JP2932812B2 (ja) 言語処理プログラム実行装置
Richards The BCPL Cintcode System Users’ Guide
JP2001282777A (ja) 文書形式変換装置及び文書形式変換プログラムを記録した記録媒体
JP2001142719A (ja) コンパイラ装置及びコンパイラプログラムを記録した記録媒体
JP2721377B2 (ja) Basicプログラム圧縮方法
US20040073897A1 (en) Overflow sensitive arithmetic instruction optimization using chaining
JPH06282443A (ja) プログラム編集方法と装置
JPH05346858A (ja) プログラム編集方法
JP2019012324A (ja) コンパイラ
JPS5953944A (ja) プログラム制御方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020205

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080222

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090222

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100222

Year of fee payment: 8

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100222

Year of fee payment: 8

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees