JPH01270135A - コンパイル変数引継方式 - Google Patents

コンパイル変数引継方式

Info

Publication number
JPH01270135A
JPH01270135A JP9962988A JP9962988A JPH01270135A JP H01270135 A JPH01270135 A JP H01270135A JP 9962988 A JP9962988 A JP 9962988A JP 9962988 A JP9962988 A JP 9962988A JP H01270135 A JPH01270135 A JP H01270135A
Authority
JP
Japan
Prior art keywords
variable
user program
variable value
name
variable name
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
JP9962988A
Other languages
English (en)
Inventor
Michiko Ujiie
氏家 美智子
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 JP9962988A priority Critical patent/JPH01270135A/ja
Publication of JPH01270135A publication Critical patent/JPH01270135A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明はコンパイラに於いて、ユーザプログラム中の変
数名に変数値を引継がせるコンパイル変数引継方式に関
する。
(従来の技術] 従来よりプログラミング技術の一つとして、同一のユー
ザプログラムから目的対応の複数のオブジェクトプログ
ラムを作成することが考えられている。この場合、目的
対応のオブジェクトプログラムを作成するためには、何
等かの手段で目的色を変数値としてユーザプログラムに
引継がせる必要がある。従来技術では、ユーザプログラ
ムに変数値を引継がせることを定義したマクロ本体をマ
クロライブラリに登録しておくと共に、マクロ本体を呼
出すマクロ呼出し文をユーザプログラム中に予め設定し
ておき、コンパイル時にマクロ本体をユーザプログラム
上に展開することにより、変数値をユーザプログラムに
引継がせるようにしている。そして、目的゛対応のオブ
ジェクトプログラムを作成する場合は、マクロ本体に定
義されている変数値を目的対応の値に変更し゛ζユーザ
プログラムに引継がせ、その後、変数値が引継がれたユ
ーザプログラムをコンパイルすることにより、目的対応
のオブジェクトプログラムを作成するようにしている。
従って、コンパイル時、ユーザプログラムを修正するこ
となく、マクロ本体に定義されている変数値を変更する
だけで、目的対応の複数のオブジェク]・プログラムを
作成することが可能となる。
〔発明が解決しようとする課題〕
しかしながら上述した従来方式は、マクロという手段を
用いて変数値をユーザプログラムに引継がせるようにし
ており、変数値を変更する場合には、マクロ本体に定義
されている情報を修正し、コンパイルし直す必要がある
。従って、ユーザプログラム中の複数の変数値を変更す
ることが必要な場合は、複数個のマクロ本体に対して上
記作業の施工が必要となり、作業工数が増大し、利用者
に負担がかかってしまう。
本発明の目的は、変数値をユーザプログラムに容易に引
継がせることができるコンパイル変数引継方式を堤供す
ることにある。
(課題を解決するための手段) 本発明は上記目的を達成するため、 ユーザプログラムを読込み、コンパイルするコンパイラ
に於いて、 外部から変数値と変数名との対が与えられることにより
、前記変数値と変数名とを対応させ°ζ変数値変数名格
納装置に格納する変数値変数名対応機能と、 前記ユーザプログラム中の変数名を#”!+ 34する
ことにより、前記変数値変数名格納装置を参照して前記
認識した変数名対応の変数値を取得し、取得した変数値
を前記認識した変数名に引継がせる変数値取得機能とを
設けたものである。
〔作 用〕
変数値変数名対応機能は外部から変数値と変数名との対
が与えられると、与えられた変数値と変数名とを対応付
けて変数値変数名格納装置に格納する。コンパイル時に
、ユーザプログラム中に変数名を認識すると、変数値取
得機構は変数値変数名格納装置を参照して上記L2識し
た変数名に対応した変数値を取得し、取得した変数値を
上記認識した変数名に引継がせる。このように、外部よ
り変数値と変数名との対を与えるだけでユーザプログラ
ム中の変数名に変数値を引継がせることができるので、
一つのユーザプログラムから目的対応の?M数のオブジ
ェクトプログラムを容易に生成することが可能となる。
〔実h’に例〕
次に本発明の実施例について図面を参照して詳細に説明
する。
第1図は本発明の実施例のブロック図であり、コンパイ
ラlと、変数値変数名格納装置2とを含んでいる。コン
パイラ1はソースプログラムであるユーザプログラム4
をコンパイルしてオブジェクトプログラム5を作成する
ものであり、データ読込み機能11と、変数値変数名対
応機能12と、変数値取得機能13とを含んでいる。デ
ータ読込み機能11は利用者により外部から与えられた
一個或いは複数個の変数値と変数名との対からなるデー
タ3を読込み、データ3が複数の変数値と変数名との対
からなる場合はデータ3を一個一個の変数値と変数名と
の対に分離する機能であり、変数値変数名対応機能12
はデータ読込み機能11が分離した各変数値と変数名と
の対を変数値変数名格納装置2に格納する機能であり、
変数値取得機能13はユーザプログラム4中に変数名を
見出した場合、変数値変数名格納装置2を参照して見出
した変数名に対応する変数値を取得し、ユーザプログラ
ム4に引継がせる機能である。
次に本実施例の動作を説明する。
利用者はユーザプログラム4から目的対応のオブジェク
トプログラムを作成する場合、ユーザプログラム4に含
まれる変数名と該変数名に与える変数値との対からなる
データ3をコンパイラ1に与える。コンパイラ1は利用
者により外部から与えられたデータ3をデータ読込み機
能11により読込み、データ3が複数の変数値と変数名
との対からなる場合はデータ3を個々の変数値と変数名
との対に分離する。データ読込み機能11で分離された
各変数名と変数値との対は変数値変数名対応機能12に
より、変数値変数名格納装置2に格納される。ここで、
データ3に於いて変数名と変数値とを対にして対応付け
る方法としては、例えば、変数名−変故値と記述する方
法が考えられる。
コンパイラ1はコンパイル時、ユーザプログラム4を読
込み、読込んだユーザプログラム4をコンパイルする。
読込んだユーザプログラム4中に変数名を見出した場合
、コンパイラ1は変数値取得機能13に変数値変数名格
納装置2を参照して上記見出した変数名対応の変数値を
取得させる処理及び上記見出した変数名に上記取得した
変数値を引継がせる処理を行なわせ、変数1直が引継が
れたユーザプログラムをコンパイルすることによりオブ
ジェクトプログラム5を生成する。
次に、本実施例の更に具体的な動作を第2図を参照し°
C詳細に説明する。尚、第2図に於いて第1図と同一符
号は同一部分を表している。また、コンパイラ1はユー
ザプログラム4中の¥記号によって変数名を認識するも
のとする。
利用者はユーザプログラム4より目的対応のオブジェク
トプログラムを生成する場合、ユーザプログラム4に含
まれる変数名と該変数名に引継がせる変数値との対から
なるデータ3をコンパイラ1に与える。今、例えば、ユ
ーザプログラム4に変数名VRが含まれ、該変数名VR
に°101゛を引継がせるとすると、利用者はVR=1
01を含むデータをコンパイラ1に与える。コンパイラ
1は与えられたデータ3をデータ読込み機能11により
読込み、データ読込み機能11はデータ3に複数の変数
値と変数名との対が含まれている場合はデータ3を個々
の変数値と変数名との対に分離する。データ読込み機能
11で分離された各変数値と変数名との対は変数値変数
名対応機能12により、対応付けて変数値変数名格納装
置i22に格納される。
コンパイラ1はコンパイル時、ユーザプログラム4を読
込み、ユーザプログラム4中の¥VRを読込んだ時に変
数名Vr2を認識する。そして、変数名VRを認識する
と、フンバイラ1は変数値取得機能13により変数値変
数名格納装置2を参照して上記変数名VRに対応する変
数値“101′を取得し、取得した変数値“101゛を
変数名VR対応の変数値としてユーザプログラム4に引
継がせる。この結果、ユーザプログラム4のVR−Vノ
\LUEにはデータ3によって与えられた変数値“10
1゛が引継がれる。ユーザプログラム4中のVR以外の
変数名に一ついても上述したと同様の処理が行かわれ、
データ3によって与えられた変数値が引継がれる。コン
パイラlは変数値が引継がれたユーザプログラムをコン
パイルすることにより、目的対応のオブジェクトプログ
ラム5を生成する。
このように、本実施例は、コンパイラ1にデータ3を与
えるだけでユーザプログラム中の変数名に目的対応の変
数値を引継がせることができるので、目的に応じた異な
る内容のデータ3を与えるだけで、目的対応の複数のオ
ブジェクトプログラムを生成することが可能となる。
〔発明の効果) 以上説明したように、本発明は、外部より変数値と変数
名との対を与えるだけでユーザプログラム中の変数名に
変数値を引継がせることができるので、一つのユーザプ
ログラムから目的対応の複数のオブジェクトプログラム
を容易に生成することができる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例のブロンク図及び、第2図は実
施例の動作説明図である。 図に於いて、1・・・コンパイラ、2・・・変数値変数
名格納装置、3・・・データ、4・・・ユーザプログラ
ム、5・・・オブジェクトプログラム、11・・・デー
タ読込み機能、12・・・変数値変数名対応機能、13
・・・変数値取得機能。

Claims (1)

  1. 【特許請求の範囲】  ユーザプログラムを読込み、コンパイルするコンパイ
    ラに於いて、 外部から変数値と変数名との対が与えられることにより
    、前記変数値と変数名とを対応させて変数値変数名格納
    装置に格納する変数値変数名対応機能と、 前記ユーザプログラム中の変数名を認識することにより
    、前記変数値変数名格納装置を参照して前記認識した変
    数名対応の変数値を取得し、取得した変数値を前記認識
    した変数名に引継がせる変数値取得機能とを含むことを
    特徴とするコンパイル変数引継方式。
JP9962988A 1988-04-22 1988-04-22 コンパイル変数引継方式 Pending JPH01270135A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9962988A JPH01270135A (ja) 1988-04-22 1988-04-22 コンパイル変数引継方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9962988A JPH01270135A (ja) 1988-04-22 1988-04-22 コンパイル変数引継方式

Publications (1)

Publication Number Publication Date
JPH01270135A true JPH01270135A (ja) 1989-10-27

Family

ID=14252375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9962988A Pending JPH01270135A (ja) 1988-04-22 1988-04-22 コンパイル変数引継方式

Country Status (1)

Country Link
JP (1) JPH01270135A (ja)

Similar Documents

Publication Publication Date Title
US5881290A (en) Industrial controller decompiler accommodating an expandable instruction set
US5819097A (en) Industrial controller compiler with expandable instruction set
US11579856B2 (en) Multi-chip compatible compiling method and device
JP4346316B2 (ja) 複数の意味レベルによるアスペクト指向プログラミングのための方法
US6961931B2 (en) Dependency specification using target patterns
JPH0695312B2 (ja) コンピュータプログラムを処理する方法およびシステム
US5452453A (en) Rule based production system adapted for complex procedural flow
CN113031967B (zh) 一种代码转换方法及装置
Wand Loops in combinator-based compilers
CN109155129B (zh) 语言程控系统
JPH01270135A (ja) コンパイル変数引継方式
JPH01270134A (ja) コンパイル変数引継方式
US6311227B1 (en) Procedure calling method
Bailey A Hope tutorial
CN108846265A (zh) 一种程序加固方法及装置
JPH01270137A (ja) コンパイル変数引継方式
JPH0695890A (ja) コンパイラにおける名前置換方式
Sarcar Interactive Object Oriented Programming in Java: Learn and Test Your Skills
JPH01240934A (ja) 自動再コンパイル方法
JPH0784797A (ja) ロードモジュールへのソースコード行番号登録方法および装置
Turas Gradual C Programming for Typed Lua
JPH07152577A (ja) コンパイル、リンク方法の共通化方式
CN116561717A (zh) 一种基于计算聚合联合混淆的Python扁平化控制流混淆方法
Klinger et al. Günther Haslinger
JPH01309125A (ja) メモリ内容監視・比較・検出方式