JPS598055A - 命令語処理方法 - Google Patents
命令語処理方法Info
- Publication number
- JPS598055A JPS598055A JP11672082A JP11672082A JPS598055A JP S598055 A JPS598055 A JP S598055A JP 11672082 A JP11672082 A JP 11672082A JP 11672082 A JP11672082 A JP 11672082A JP S598055 A JPS598055 A JP S598055A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- processing module
- register
- macro
- input
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
本発明は命令語処理方法に係り、特に、対話型プログラ
ム作成方式の命令語処理方法に関する。
ム作成方式の命令語処理方法に関する。
計算機専用のマクロ命令技術によるプログラミングのマ
ンマシン性を改善する手法として、従来から対話型高級
言語によるプログラミングと、本発明の命令語処理方法
が対象としている対話型図式(処理モジュールを画面で
結合する方式)プログラミングとがある。この対話型図
式プログラミングに於いては、マンマシン性を重視して
いるために、画面と可逆性をもつオブジェクトテーブル
をもつことが一般的であり且つ不可欠なことである。従
来の対話型図式プログラミングに於いては前記オブジェ
クトテーブルのみを有する場合が多い。このため、オン
ライン時に前記プログラムをインタープリテイプに処理
せざるをえず、処理速度が低速であった。
ンマシン性を改善する手法として、従来から対話型高級
言語によるプログラミングと、本発明の命令語処理方法
が対象としている対話型図式(処理モジュールを画面で
結合する方式)プログラミングとがある。この対話型図
式プログラミングに於いては、マンマシン性を重視して
いるために、画面と可逆性をもつオブジェクトテーブル
をもつことが一般的であり且つ不可欠なことである。従
来の対話型図式プログラミングに於いては前記オブジェ
クトテーブルのみを有する場合が多い。このため、オン
ライン時に前記プログラムをインタープリテイプに処理
せざるをえず、処理速度が低速であった。
上記インタープリテイプな処理をせざるを得ない理由は
以下のとおりである。前記オブジェクトテーブルを画面
に対応して作成する処理は、プログラマまたは端末側の
処理であり、オブジェクトテーブルの処理は計算機(コ
ントローラー)側の処理であること。また、プログラマ
側と計算機側の専用言語は相違していることが一般的で
あり、言語体系の相違する専用言語(マクロ命令)をプ
ログラマ側がさらに作成することは機能的に困難である
こと。更に、前記対話型プログラミングは事務処理上な
どのオフラインで適用されることが一般的であったこと
などである。
以下のとおりである。前記オブジェクトテーブルを画面
に対応して作成する処理は、プログラマまたは端末側の
処理であり、オブジェクトテーブルの処理は計算機(コ
ントローラー)側の処理であること。また、プログラマ
側と計算機側の専用言語は相違していることが一般的で
あり、言語体系の相違する専用言語(マクロ命令)をプ
ログラマ側がさらに作成することは機能的に困難である
こと。更に、前記対話型プログラミングは事務処理上な
どのオフラインで適用されることが一般的であったこと
などである。
しかし、制御用プログラマの分野に、上記した対話型図
式プログラミングが適用される場合、以下のような欠点
があった。すなわち、シーケンス制御、演算制御、DI
)C制御などのプログラムの作成にあたり、各制御機能
単位ごとにサブルーチン化した処理単位(処理モジュー
ル)を用いて前記プログラムを対話型で作成した場合、
マンマシン性はきわめて高い反面、このプログラムの実
行にあたっては前述したようなインタプリティブな処理
のために、処理速度が低速となる欠点があった。従って
、処理速度を要求される制御分野において、DDC制御
などのアナログ処理を含む対話型プログラム作成方式の
適用が遅れていた。
式プログラミングが適用される場合、以下のような欠点
があった。すなわち、シーケンス制御、演算制御、DI
)C制御などのプログラムの作成にあたり、各制御機能
単位ごとにサブルーチン化した処理単位(処理モジュー
ル)を用いて前記プログラムを対話型で作成した場合、
マンマシン性はきわめて高い反面、このプログラムの実
行にあたっては前述したようなインタプリティブな処理
のために、処理速度が低速となる欠点があった。従って
、処理速度を要求される制御分野において、DDC制御
などのアナログ処理を含む対話型プログラム作成方式の
適用が遅れていた。
また、プロゲラマチイブなシーケンスコントロールなど
の分野においても、各メーカー側の言語使用の相違のた
め、他メーカーのプログラマで作成した対話型図式プロ
グラムは互換性がなく、他メーカーのコントローラーに
は適用できないなどの問題点もあった。
の分野においても、各メーカー側の言語使用の相違のた
め、他メーカーのプログラマで作成した対話型図式プロ
グラムは互換性がなく、他メーカーのコントローラーに
は適用できないなどの問題点もあった。
具体的には、従来の各種処理モジュー・ルを画面上で結
合してプログラムを作成する対話型方式の命令語処理で
は、作成モード時に画tfi上の処理モジュールに1対
1に対応したオブジェクトテーブルを作成し、実行時、
前記オブジェクトテーブルをインタプリティブに処理し
ている。画面上の処理モジュール間の結合方式として線
香結合、すなわち線番により結合を指定する方法、およ
び分岐合流結合、すなわち分岐合流などのシンボルにて
結合を指定する方法とが一般的に使用されている。
合してプログラムを作成する対話型方式の命令語処理で
は、作成モード時に画tfi上の処理モジュールに1対
1に対応したオブジェクトテーブルを作成し、実行時、
前記オブジェクトテーブルをインタプリティブに処理し
ている。画面上の処理モジュール間の結合方式として線
香結合、すなわち線番により結合を指定する方法、およ
び分岐合流結合、すなわち分岐合流などのシンボルにて
結合を指定する方法とが一般的に使用されている。
しかし、いずれの方式も画面表示との可逆性をもたせる
ために、画面の処理モジュールに対応したオブジェクト
テーブルの構成が複雑となっている。
ために、画面の処理モジュールに対応したオブジェクト
テーブルの構成が複雑となっている。
このため、実行時はオブジェクトテーブルを逐次インタ
プリティブに処理するため、マクロ命令による専用プロ
グラムに比較し処理が低速であった。
プリティブに処理するため、マクロ命令による専用プロ
グラムに比較し処理が低速であった。
本発明の目的は、上記の欠点を解消し、高速処理がoJ
能な対話型プログラミング方式の命令語処理方法を提供
することにある。
能な対話型プログラミング方式の命令語処理方法を提供
することにある。
本発明は、オフライン時の作成モードにおいて、画面上
の処理モジュールの結合に対応した可逆性を持つオブジ
ェクトテーブルを作成し、オンライン時の実行モードに
て、従来オンライン時実施していたインタプリティブな
処理を一度だけ実施させることにより、処理モジュール
結合間の処理データの入出力レジスタ(エリア)編成、
処理モジュールのパラメータの引当て及び未処理モジュ
ールへの結合アドレス等を決定する専用マクロ命令語よ
構成るマクロ命令テーブルに、前記オブジェクトテーブ
ルを変換することにより、上記目的を達成する。
の処理モジュールの結合に対応した可逆性を持つオブジ
ェクトテーブルを作成し、オンライン時の実行モードに
て、従来オンライン時実施していたインタプリティブな
処理を一度だけ実施させることにより、処理モジュール
結合間の処理データの入出力レジスタ(エリア)編成、
処理モジュールのパラメータの引当て及び未処理モジュ
ールへの結合アドレス等を決定する専用マクロ命令語よ
構成るマクロ命令テーブルに、前記オブジェクトテーブ
ルを変換することにより、上記目的を達成する。
以下本発明の命令語処理方法の一実施例を図面に従って
説明する。
説明する。
本発明は対語型図式プログラミング方式において、オフ
ライン時に、画面の処理モジュールの結合に対応したオ
ブジェクトテーブルの作成(作成モード)することと、
オブジェクトテーブルを専用マクロ命令に変換する処理
(実行モード)との両者を含む。しかし、前記オブジェ
クトテーブルの作成は従来のプログラマとしての技術に
依存する所もあるため、ここではオブジェクトテーブル
からマクロ命令テーブルを作成する手法(機構)につい
て詳細に説明することにする。
ライン時に、画面の処理モジュールの結合に対応したオ
ブジェクトテーブルの作成(作成モード)することと、
オブジェクトテーブルを専用マクロ命令に変換する処理
(実行モード)との両者を含む。しかし、前記オブジェ
クトテーブルの作成は従来のプログラマとしての技術に
依存する所もあるため、ここではオブジェクトテーブル
からマクロ命令テーブルを作成する手法(機構)につい
て詳細に説明することにする。
第1図は本発明の命令語処理方法の一実施例の構成を示
すブロック図である。中央処理装置1にはメモリパスラ
イン2とインターフェイスパスライン3とが接続されて
いる。メモリパスライン2はメモリ4及びコンパイラ手
段5が接続されており、また、インターフェイスパスラ
イン3には入力制御装置6及び出力制御装置7が接続さ
れている。また、前記メモリ4内にはオブジェクトテー
ブル8、マクロ命令テーブル9及び各種処理モジュール
群10が格納されている。
すブロック図である。中央処理装置1にはメモリパスラ
イン2とインターフェイスパスライン3とが接続されて
いる。メモリパスライン2はメモリ4及びコンパイラ手
段5が接続されており、また、インターフェイスパスラ
イン3には入力制御装置6及び出力制御装置7が接続さ
れている。また、前記メモリ4内にはオブジェクトテー
ブル8、マクロ命令テーブル9及び各種処理モジュール
群10が格納されている。
コンパイラ手段(命令語処理)5はメモリパスライン2
を介して、メモリ4内のプログラム作成モードで作成さ
れたオブジェクトテーブル8を参照して、実行オブジェ
クトであるマクロ命令テーブル(プログラム)9をオフ
ラインの実行モードで作成する。前記オブジェクトテー
ブル8の1要素(要素の集合をテーブルと定義する)の
構成は、処理モジュールへの結合先及び処理モジュール
がモジュールとしての処理機能を実施するのに不可欠な
パラメータなどからなっている。世し、処理モジュール
とは一連の処理の処理単位であわ、たとえばDDC処理
ならば、アナログ取込処理、工学単位変換処理、PID
制御処理などの処理単位を1つの処理モジュールとして
定義したものである。即ち、処理モジュールは処理単位
のブラックボックスであり、一連の意味のある処理は処
理モジュールの連結した処理によって実現される。
を介して、メモリ4内のプログラム作成モードで作成さ
れたオブジェクトテーブル8を参照して、実行オブジェ
クトであるマクロ命令テーブル(プログラム)9をオフ
ラインの実行モードで作成する。前記オブジェクトテー
ブル8の1要素(要素の集合をテーブルと定義する)の
構成は、処理モジュールへの結合先及び処理モジュール
がモジュールとしての処理機能を実施するのに不可欠な
パラメータなどからなっている。世し、処理モジュール
とは一連の処理の処理単位であわ、たとえばDDC処理
ならば、アナログ取込処理、工学単位変換処理、PID
制御処理などの処理単位を1つの処理モジュールとして
定義したものである。即ち、処理モジュールは処理単位
のブラックボックスであり、一連の意味のある処理は処
理モジュールの連結した処理によって実現される。
前記マクロ命令テーブル9は前記オブジェクトテーブル
8の要素を基にマクロ命令に展開したものであシ、前記
オブジェクトテーブル8の1要素は前記マクロ命令テー
ブル9に於いて複数のマクロ命令に展開される。ここで
、実施例の特徴部分はオブジェクトテーブル8からマク
ロ命令テーブル9へのコンパイラ手段5を有するところ
にある。
8の要素を基にマクロ命令に展開したものであシ、前記
オブジェクトテーブル8の1要素は前記マクロ命令テー
ブル9に於いて複数のマクロ命令に展開される。ここで
、実施例の特徴部分はオブジェクトテーブル8からマク
ロ命令テーブル9へのコンパイラ手段5を有するところ
にある。
オンライン時には、前記マクロ命令テーブル9を中央処
理装置1にて処理すると共に、当初からマクロ命令にて
作成されている各種処理モジュール群10のいずれか1
つの処理モジュールに結合させてモジュールの処理を実
行する。処理モジュールの処理が終了すると再び前記マ
クロ命令テーブル9の次のマクロ命令を実行する。
理装置1にて処理すると共に、当初からマクロ命令にて
作成されている各種処理モジュール群10のいずれか1
つの処理モジュールに結合させてモジュールの処理を実
行する。処理モジュールの処理が終了すると再び前記マ
クロ命令テーブル9の次のマクロ命令を実行する。
入力制御装置6及び出力制御装置7ば、インターフェイ
スパスライン3を介して前記中央処理装置1などに接続
されており、前記入出力制御装置6.7へのアクセスは
前述の各々の処理モジュールにより実施される。即ち、
画面上の処理モジュールの結合手順に従って、例えば前
記人力制御装(青6からデータを取込む処理モジュール
、次に演算をする処理モジュール、さらに前記出力制御
装置6にデータを出力する処理モジュールによりプログ
ラムを対話型図式に作成すると、入力データが演算され
出力される制御ループを作成することができる。
スパスライン3を介して前記中央処理装置1などに接続
されており、前記入出力制御装置6.7へのアクセスは
前述の各々の処理モジュールにより実施される。即ち、
画面上の処理モジュールの結合手順に従って、例えば前
記人力制御装(青6からデータを取込む処理モジュール
、次に演算をする処理モジュール、さらに前記出力制御
装置6にデータを出力する処理モジュールによりプログ
ラムを対話型図式に作成すると、入力データが演算され
出力される制御ループを作成することができる。
第2図は対話型図式プログラム例と前記マクロ命令テー
ブル(プログラム)9との関係を示したブロック図であ
る。図式プログラム11はプログラマ12にて作成され
たものであり、画面に処理モジュール表示がなされた例
であり、画面(見かけ)上、処理モジュールA表示13
.B表示14゜C表示15.Z表示16の結合で作成さ
れている例である。この画面表示と同時に前記プログラ
マ12は画面表示に対応して、前記メモリ4内の予めマ
クロ命令で作成されている処理モジュールA17.B1
8.C19,Z20の結合先、各種モジュール処理に必
要なパラメータ及び画面上での結合状況に対応したオブ
ジェク)A21.B22゜C23,Z24を画面上での
作成順に作成する。
ブル(プログラム)9との関係を示したブロック図であ
る。図式プログラム11はプログラマ12にて作成され
たものであり、画面に処理モジュール表示がなされた例
であり、画面(見かけ)上、処理モジュールA表示13
.B表示14゜C表示15.Z表示16の結合で作成さ
れている例である。この画面表示と同時に前記プログラ
マ12は画面表示に対応して、前記メモリ4内の予めマ
クロ命令で作成されている処理モジュールA17.B1
8.C19,Z20の結合先、各種モジュール処理に必
要なパラメータ及び画面上での結合状況に対応したオブ
ジェク)A21.B22゜C23,Z24を画面上での
作成順に作成する。
例えば、オブジェクトAの構成要素として、分岐合流コ
ード、処理モジュールナンバ(Aに対応するユニークな
ナンバ)、パラメーターナンバなどがある。画面上の前
記処理モジュールA表示3とメモリ2内の前記オブジェ
ク)A21の作成はプログラマ12によシ行なわれる。
ード、処理モジュールナンバ(Aに対応するユニークな
ナンバ)、パラメーターナンバなどがある。画面上の前
記処理モジュールA表示3とメモリ2内の前記オブジェ
ク)A21の作成はプログラマ12によシ行なわれる。
上記のように図式プログラム11のオブジェクトテーブ
ル8は各処理モジュールのオブジェクトA21.B22
.C23,Z24で構成されている。即ち、図式プログ
ラム11に新しく処理モジュールが追加された場合、こ
れに呼応して新しいオブジェクトが前記オブジェクトテ
ーブル8に追加される。逆に、前記図式プログラム11
の処理モジュールが削除されれば、前記オブジェクトテ
ーブル8内の対応するオブジェクトが削除される。
ル8は各処理モジュールのオブジェクトA21.B22
.C23,Z24で構成されている。即ち、図式プログ
ラム11に新しく処理モジュールが追加された場合、こ
れに呼応して新しいオブジェクトが前記オブジェクトテ
ーブル8に追加される。逆に、前記図式プログラム11
の処理モジュールが削除されれば、前記オブジェクトテ
ーブル8内の対応するオブジェクトが削除される。
但し、オブジェクトテーブル8内の構成要素であるオブ
ジェクト、例えばオブジェク)A21は画面上の処理モ
ジュールA表示13の相互の結合状況やモジュールを認
識する情報テーブルである。
ジェクト、例えばオブジェク)A21は画面上の処理モ
ジュールA表示13の相互の結合状況やモジュールを認
識する情報テーブルである。
このため、同一処理モジュールが何回も画面上(図式プ
ログラム)中で使用された場合、使用回数分だけ前記オ
ブジェクトテーブル8の中に対応するオブジェクトが増
加する。なお、各種処理モジュール群10の中の各処理
モジュールは処理単位(サブルーチン)であυ、前記オ
ブジェクトテーブル8の中に何回オブジェクトとして現
われようとユニークな処理モジュールとして存在すれば
十分である。
ログラム)中で使用された場合、使用回数分だけ前記オ
ブジェクトテーブル8の中に対応するオブジェクトが増
加する。なお、各種処理モジュール群10の中の各処理
モジュールは処理単位(サブルーチン)であυ、前記オ
ブジェクトテーブル8の中に何回オブジェクトとして現
われようとユニークな処理モジュールとして存在すれば
十分である。
従来技術ではオンライン時、前記オブジェクト−7−プ
ル8をインタプリティブに処理するため、処理速度が低
速であった。しかし、本実施例の命令語処理方法では、
前記コンパイラ手段5により、オブジェクトテーブル8
内の各オブジェク)A21゜R22,C23,Z24を
各々対応するマクロ命令A25.B26.C27,Z2
8に変換して、オンラインモードの前記マクロ命令テー
ブル9を作成することにより高速化を図っている。
ル8をインタプリティブに処理するため、処理速度が低
速であった。しかし、本実施例の命令語処理方法では、
前記コンパイラ手段5により、オブジェクトテーブル8
内の各オブジェク)A21゜R22,C23,Z24を
各々対応するマクロ命令A25.B26.C27,Z2
8に変換して、オンラインモードの前記マクロ命令テー
ブル9を作成することにより高速化を図っている。
第3図は第1図及び第2図に示したマクロ命令へ変換す
るコンパイラ手段5の詳細を示すブロック図である。メ
モリパスライン2にインストラクションレジスタ29の
入力側が接続され、このインストラクションレジスタ2
9の出力は分岐合流デコーダ30に入力されると共にリ
ンクデコーダ31及びパラメータデコーダ32に入力さ
れている。これらリンクデコーダ31及びパラメータデ
コーダ32の出力はマクロ命令作成手段33に入力され
、このマクロ命令作成手段33の一方の出力はメモリパ
スライン2に出力され、他方の出力はプログラムカウン
タ34に入力されている。このプログラムカウンタ34
の出力はメモリパスライン2に出力されている。また、
前記分岐合流デコーダ30の出力はカウントゲート35
と中間カウントゲート36に入力されている。カウント
ゲート35の出力は入力カウントレジスタ37に入力さ
れ、この入力カウントレジスタ37の出力はカウントゲ
ート35に入力されている。また、出力カウントレジス
タ38の出力は前記カウントゲート35に入力されると
共に、この出力カウントレジスタ38と入力カウントレ
ジスタ37の出力はマクロ命令作成手段33に入力され
ている。また、カウントゲート35と中間カウントゲー
ト36は接続されておυ、中間カウントゲート36と中
間カウントレジスタ群39とが接続されており、この中
間カウントレジスタ群39の出力はマクロ命令作成手段
33に入力されている。なおコンパイラ手段5内の一点
鎖線で囲った部分はエリア生成手段4oを構成している
。先ず、プログラムカウンタ34はオブジェクトテーブ
ル内のオブジェクト例えばオブジェク)A21の格納ア
ドレスを示すものである。このプログラムカウンタ34
により指示されたアドレスからインストラクションレジ
スタ29はオブジェクトA21を取込み一時記憶する。
るコンパイラ手段5の詳細を示すブロック図である。メ
モリパスライン2にインストラクションレジスタ29の
入力側が接続され、このインストラクションレジスタ2
9の出力は分岐合流デコーダ30に入力されると共にリ
ンクデコーダ31及びパラメータデコーダ32に入力さ
れている。これらリンクデコーダ31及びパラメータデ
コーダ32の出力はマクロ命令作成手段33に入力され
、このマクロ命令作成手段33の一方の出力はメモリパ
スライン2に出力され、他方の出力はプログラムカウン
タ34に入力されている。このプログラムカウンタ34
の出力はメモリパスライン2に出力されている。また、
前記分岐合流デコーダ30の出力はカウントゲート35
と中間カウントゲート36に入力されている。カウント
ゲート35の出力は入力カウントレジスタ37に入力さ
れ、この入力カウントレジスタ37の出力はカウントゲ
ート35に入力されている。また、出力カウントレジス
タ38の出力は前記カウントゲート35に入力されると
共に、この出力カウントレジスタ38と入力カウントレ
ジスタ37の出力はマクロ命令作成手段33に入力され
ている。また、カウントゲート35と中間カウントゲー
ト36は接続されておυ、中間カウントゲート36と中
間カウントレジスタ群39とが接続されており、この中
間カウントレジスタ群39の出力はマクロ命令作成手段
33に入力されている。なおコンパイラ手段5内の一点
鎖線で囲った部分はエリア生成手段4oを構成している
。先ず、プログラムカウンタ34はオブジェクトテーブ
ル内のオブジェクト例えばオブジェク)A21の格納ア
ドレスを示すものである。このプログラムカウンタ34
により指示されたアドレスからインストラクションレジ
スタ29はオブジェクトA21を取込み一時記憶する。
このインストラクションレジスタ29の構成は、画面上
の処理モジュールナンバ及び分岐合流コード等で構成さ
れている。このため、処理単位としてのデータの処理結
果を次の処理モジュールに渡すためのエリアの指定及び
処理モジュールの結合先アドレスの分析を行ない、この
分析結果をマクロ命令で記述する必要がある。
の処理モジュールナンバ及び分岐合流コード等で構成さ
れている。このため、処理単位としてのデータの処理結
果を次の処理モジュールに渡すためのエリアの指定及び
処理モジュールの結合先アドレスの分析を行ない、この
分析結果をマクロ命令で記述する必要がある。
このため、先ず分岐合流デコーダ30によシオブジェク
)A21の分岐合流コードを判別し、また、この分岐合
流デコーダ30の消析コードに対応してエリア生成手段
40が処理モジュール間のデータ引渡しエリアを事前確
定する。このエリア生成手段40では、前回処理の処理
モジュールの結果が今回処理の処理モジュールの入力結
果となる。
)A21の分岐合流コードを判別し、また、この分岐合
流デコーダ30の消析コードに対応してエリア生成手段
40が処理モジュール間のデータ引渡しエリアを事前確
定する。このエリア生成手段40では、前回処理の処理
モジュールの結果が今回処理の処理モジュールの入力結
果となる。
このように、前回処理のモジューめ出力データは今回処
理モジュールの入力データとなり、更に今回の処理モジ
ュールの出力データは後の処理モジュールの入力データ
となる。例えば、処理モジュールA17の出力データは
分岐して処理モジュールZ20.B18に引数として渡
る必要がある。
理モジュールの入力データとなり、更に今回の処理モジ
ュールの出力データは後の処理モジュールの入力データ
となる。例えば、処理モジュールA17の出力データは
分岐して処理モジュールZ20.B18に引数として渡
る必要がある。
このため、エリア生成手段40は前回処理モジュールの
出力データ数を記憶している出力カウントレジスタ38
、今回処理される処理モジュールの入力データ数を記憶
する入力カウントレジスタ37、入出力カウントレジス
タを管理するカウントゲート35、前回処理までの分岐
合流デコーダに応じて前記入力カウントレジスタ37と
中間カウントレジスタ群39を管理する中間カウントゲ
ート36から構成されている。処理モジュール間の結合
において分岐合流が全くない場合、前回処理モジュール
の出力データ敷と今回処理モジュールの入力データ数と
は同一であるが、分岐合流があるため実際には同一数と
ならない。このため、分岐があった場合出力データ数を
分岐に応じ中間カウントレジスタ群39に入れ、前記中
間カウントレジスタ群39のどのレジスタに入れたかの
管理を中間カウントゲート36が行なっている。
出力データ数を記憶している出力カウントレジスタ38
、今回処理される処理モジュールの入力データ数を記憶
する入力カウントレジスタ37、入出力カウントレジス
タを管理するカウントゲート35、前回処理までの分岐
合流デコーダに応じて前記入力カウントレジスタ37と
中間カウントレジスタ群39を管理する中間カウントゲ
ート36から構成されている。処理モジュール間の結合
において分岐合流が全くない場合、前回処理モジュール
の出力データ敷と今回処理モジュールの入力データ数と
は同一であるが、分岐合流があるため実際には同一数と
ならない。このため、分岐があった場合出力データ数を
分岐に応じ中間カウントレジスタ群39に入れ、前記中
間カウントレジスタ群39のどのレジスタに入れたかの
管理を中間カウントゲート36が行なっている。
また、前記リンクデコーダ31は、各処理モジュールの
結合光、即ち前記各1′!h処理モジユ一ル群IO内の
処理モジュール、例えば処理モジュールA17を選択し
、処理モジュ・−ルAに結合させるアドレスを選択する
。パラメータデコーダ32は各種処理モジュールが処理
を行なうに必要なパラメータを指定する。マクロ命令作
成手段33は、前記リンクデコーダ31、パラメータデ
コーダ32及び入出力カウントレジスタ37.38によ
シ、前記オブジェクトテーブル8の各要素、例えばオブ
ジェク)A21を昨析することによシ、前記メモリ4内
に前記マクロ命令A25を編集する処理を行なう。一つ
の処理が終ると、プログラムカウンタ34を歩進させる
ことによシ、次のオブジェクトZ24を前記インストラ
クションレジスタ29に取込み、同様の処理を繰返すこ
とにより前記マクロ命令テーブル9が作成される。
結合光、即ち前記各1′!h処理モジユ一ル群IO内の
処理モジュール、例えば処理モジュールA17を選択し
、処理モジュ・−ルAに結合させるアドレスを選択する
。パラメータデコーダ32は各種処理モジュールが処理
を行なうに必要なパラメータを指定する。マクロ命令作
成手段33は、前記リンクデコーダ31、パラメータデ
コーダ32及び入出力カウントレジスタ37.38によ
シ、前記オブジェクトテーブル8の各要素、例えばオブ
ジェク)A21を昨析することによシ、前記メモリ4内
に前記マクロ命令A25を編集する処理を行なう。一つ
の処理が終ると、プログラムカウンタ34を歩進させる
ことによシ、次のオブジェクトZ24を前記インストラ
クションレジスタ29に取込み、同様の処理を繰返すこ
とにより前記マクロ命令テーブル9が作成される。
第4図はマクロ命令テーブル9を作成するマクロ命令作
成手段33の詳細を示すブロック図である。入力カウン
トレジスタ37、出力カウントレジスタ38、中間カウ
ントレジスタ群39、リンクデコーダ31、パラメータ
デコーダ32、モジュールグローバルエリアレジスタ4
1、マクロ命令テーブルカウンタ42の各々の出力がマ
クロ命令作成手段33に入力され、このマクロ命令作成
手段33の各出力が、リンクアドレスレジスタ43、マ
クロ命令テーブルカウンタ44、入力データアドレスレ
ジスタ45、出力データアドレスレジスタ46、パラメ
ータアドレスレジスタ47、モジュールグローバルエリ
アレジスタ41に入力されている。なお図中一点鎖線で
示した部分はマクロ命令A25を示している。
成手段33の詳細を示すブロック図である。入力カウン
トレジスタ37、出力カウントレジスタ38、中間カウ
ントレジスタ群39、リンクデコーダ31、パラメータ
デコーダ32、モジュールグローバルエリアレジスタ4
1、マクロ命令テーブルカウンタ42の各々の出力がマ
クロ命令作成手段33に入力され、このマクロ命令作成
手段33の各出力が、リンクアドレスレジスタ43、マ
クロ命令テーブルカウンタ44、入力データアドレスレ
ジスタ45、出力データアドレスレジスタ46、パラメ
ータアドレスレジスタ47、モジュールグローバルエリ
アレジスタ41に入力されている。なお図中一点鎖線で
示した部分はマクロ命令A25を示している。
前記入出力カウントレジスタ37.38及ヒ中間カウン
トレジスタ群39により、処理モジュール間のデータ授
受数が算出される。今回処理される処理モジュールが取
込むべきデータのアドレスを示す入力データアドレスレ
ジスタ45、処理結果の出力すべきデータのアドレスを
示す出力データアドレスレジスタ46を生成する。即ち
、各処理モジュールは処理単位であるから各処理モジュ
ールの出力データ数は処理モジュール毎に固有であり、
図式プログラムの分岐合流に依存せず不変である。他方
、各処理モジュールの入力データ数は、合流状況によシ
、複数個の処理モジュールの出力データが合流してデー
タ数が増加することもあり、合流状況に依存し変化する
。このため、各処理モジュール毎の入出力数を入出力カ
ウントレジスタ37.38が管理する。分岐がない場合
、前記出力カウントレジスタ38は次のモジュール処理
でそのまま入力カウントレジスタ37と同一内容となる
。分岐がある場合、処理モジュールの出力データ数は分
岐に対応し、中間カウントレジスタ群39の該当レジス
タに保管され、合流するモジュール処理の場合、前記出
力カウントレジスタ38の内容に、中間レジスタ群39
の該当レジスタの内容を加算した結果が入力カウントレ
ジスタ37の内容となる。モジュールの入出力データア
ドレスレジスタ46.47は前記入出力カウントレジス
タ37.38の内容及び前記中間カウントレジスタ群3
9の該当レジスタナンバによりアドレスが決定される。
トレジスタ群39により、処理モジュール間のデータ授
受数が算出される。今回処理される処理モジュールが取
込むべきデータのアドレスを示す入力データアドレスレ
ジスタ45、処理結果の出力すべきデータのアドレスを
示す出力データアドレスレジスタ46を生成する。即ち
、各処理モジュールは処理単位であるから各処理モジュ
ールの出力データ数は処理モジュール毎に固有であり、
図式プログラムの分岐合流に依存せず不変である。他方
、各処理モジュールの入力データ数は、合流状況によシ
、複数個の処理モジュールの出力データが合流してデー
タ数が増加することもあり、合流状況に依存し変化する
。このため、各処理モジュール毎の入出力数を入出力カ
ウントレジスタ37.38が管理する。分岐がない場合
、前記出力カウントレジスタ38は次のモジュール処理
でそのまま入力カウントレジスタ37と同一内容となる
。分岐がある場合、処理モジュールの出力データ数は分
岐に対応し、中間カウントレジスタ群39の該当レジス
タに保管され、合流するモジュール処理の場合、前記出
力カウントレジスタ38の内容に、中間レジスタ群39
の該当レジスタの内容を加算した結果が入力カウントレ
ジスタ37の内容となる。モジュールの入出力データア
ドレスレジスタ46.47は前記入出力カウントレジス
タ37.38の内容及び前記中間カウントレジスタ群3
9の該当レジスタナンバによりアドレスが決定される。
即ち、処理モジュール間に分岐がある場合、処理モジュ
ールの出力データは前記中間カウントレジスタ群39の
該当レジスタナンバ位置に合わせて前記出力データアド
レスレジスタ46が決定される。
ールの出力データは前記中間カウントレジスタ群39の
該当レジスタナンバ位置に合わせて前記出力データアド
レスレジスタ46が決定される。
更に、前記パラメータデコーダ32によりデコードされ
たパラメータナンバにより、パラメータアドレスレジス
タ47の内容が決定される。同様に前記リンクデコーダ
31によりデコードされた処理モジュールリンクナンバ
によシリンクアドレスレジスタ43の内容が演算決定さ
れる。また、処理モジュール間の結合にて共通にデータ
を渡す処理に使用される共通データエリアを示すモジュ
ールグローバルアドレスレジスタ41、変換作成したマ
クロ命令テーブルのプログラムカウンタであるマクロ命
令テーブルカウンタ44により一つのオブジェクトに対
応するマクロ命令が形成される。
たパラメータナンバにより、パラメータアドレスレジス
タ47の内容が決定される。同様に前記リンクデコーダ
31によりデコードされた処理モジュールリンクナンバ
によシリンクアドレスレジスタ43の内容が演算決定さ
れる。また、処理モジュール間の結合にて共通にデータ
を渡す処理に使用される共通データエリアを示すモジュ
ールグローバルアドレスレジスタ41、変換作成したマ
クロ命令テーブルのプログラムカウンタであるマクロ命
令テーブルカウンタ44により一つのオブジェクトに対
応するマクロ命令が形成される。
第5図は第4図に基づいたメモリ上でのマクロ命令の基
本構成例を示したものであり、第4図で示したブロック
図を実際例の構成で書換えたものである。マクロ命令テ
ーブルは、前記モジュールグローバルエリアレジスタ4
1、マクロ命令テーブルカウンタ42、入力データアド
レスレジスタ45、出力データアドレスレジスタ46、
パラメータアドレスレジスタ47、リンクアドレスレジ
スタ43にて構成されている。
本構成例を示したものであり、第4図で示したブロック
図を実際例の構成で書換えたものである。マクロ命令テ
ーブルは、前記モジュールグローバルエリアレジスタ4
1、マクロ命令テーブルカウンタ42、入力データアド
レスレジスタ45、出力データアドレスレジスタ46、
パラメータアドレスレジスタ47、リンクアドレスレジ
スタ43にて構成されている。
第5図中、LDR,1,ADD几はレジスタに前記入力
データアドレスレジスタ45、出力データアドレスレジ
スタ46、パラメータアドレスレジスタ47、モジュー
ルグローバルエリアレジスタ41のマクロ命令テーブル
の先頭を記述するものである。LDR2,LINKはレ
ジスタに処理モジュールリンクアドレスレジスタ43の
内容を記述するものであp、BALO■2にて当初から
マクロ命令で作成されている処理モジュールにリンクす
るマクロ命令である。処理モジュールにリンクされると
処理モジュールは前記入力データアドレスレジスタ45
、出力データアドレスレジスタ46、パラメータアドレ
スレジスタ47、モジュールグローバルエリアレジスタ
41のテーブルを参照することにより、処理モジュール
としての処理を実行することができる。即ち、第5図は
オブジェクトテーブル8の一要素が全てマクロ命令で記
述されることを示している。同様な処理を繰返すことに
よりオブジェクトテーブル8は全てマクロ命令より成る
マクロ命令テーブル9に変換できる。このため、本実施
例はオンライン時のインタプリティブな処理を不要とし
ている。
データアドレスレジスタ45、出力データアドレスレジ
スタ46、パラメータアドレスレジスタ47、モジュー
ルグローバルエリアレジスタ41のマクロ命令テーブル
の先頭を記述するものである。LDR2,LINKはレ
ジスタに処理モジュールリンクアドレスレジスタ43の
内容を記述するものであp、BALO■2にて当初から
マクロ命令で作成されている処理モジュールにリンクす
るマクロ命令である。処理モジュールにリンクされると
処理モジュールは前記入力データアドレスレジスタ45
、出力データアドレスレジスタ46、パラメータアドレ
スレジスタ47、モジュールグローバルエリアレジスタ
41のテーブルを参照することにより、処理モジュール
としての処理を実行することができる。即ち、第5図は
オブジェクトテーブル8の一要素が全てマクロ命令で記
述されることを示している。同様な処理を繰返すことに
よりオブジェクトテーブル8は全てマクロ命令より成る
マクロ命令テーブル9に変換できる。このため、本実施
例はオンライン時のインタプリティブな処理を不要とし
ている。
第6図(a)及び(b)は図式プログラムの画面プログ
ラム及び最終的なマクロ命令テーブル展開例を示したも
のである。画面上の処理モジュールA表示13は見かけ
上の処理モジュールであり、実体は前記メモリ4内の処
理モジュールA17である。画面上の見かけ上のモジュ
ール13,16゜14.15はマクロ命令テーブル9に
最終的に展開される。
ラム及び最終的なマクロ命令テーブル展開例を示したも
のである。画面上の処理モジュールA表示13は見かけ
上の処理モジュールであり、実体は前記メモリ4内の処
理モジュールA17である。画面上の見かけ上のモジュ
ール13,16゜14.15はマクロ命令テーブル9に
最終的に展開される。
オンライン時の処理は前記中央処理装置1により前記マ
クロ命令テーブル9を順に処理していく。
クロ命令テーブル9を順に処理していく。
最初のマクロ命令は処理モジュールAの処理であり、B
ALO■2のマクロ命令により、前記各種処理モジュー
ル群10内の処理モジュールAにリンクされ、マクロ命
令で記述されている処理モジュールAが処理される。即
ち、処理モジュールAばLL)R,1,100のマクロ
命令で示すようにレジスタにて修飾されるテーブルの入
出力アドレス等の情報により、処理(演算)シ、結果(
a′)をデータエリア48内の200の位置に格納する
。
ALO■2のマクロ命令により、前記各種処理モジュー
ル群10内の処理モジュールAにリンクされ、マクロ命
令で記述されている処理モジュールAが処理される。即
ち、処理モジュールAばLL)R,1,100のマクロ
命令で示すようにレジスタにて修飾されるテーブルの入
出力アドレス等の情報により、処理(演算)シ、結果(
a′)をデータエリア48内の200の位置に格納する
。
以後同様な処理を繰返すことによシ、オンライン時マク
ロ命令テーブルは高速処理される。
ロ命令テーブルは高速処理される。
本実施例によれば、オフライン時に作成した可逆性のあ
るオブジェクトテーブル8を、コンノ(イラ手段5によ
シマクロ命令構成のマクロ命令テーブル9に変換し、こ
のマクロ命令テーブル9によって中央処理装置1が処理
を実行する構成としたことにより、従来からの対話型の
マンマシン性を維持しつつ、オンライン時の処理を従来
のインタプリティブな処理に比較して約20倍程尚速と
し得る効果がおる。また、コンパイラ手段5を各言語仕
様に拡張することにより、マイクロコントローラにおけ
る汎用プログラミングと専用プログラミングとの共存、
更に上位側算機でのクロスコンパイルの手法の確立等を
実現し得る効果がある。
るオブジェクトテーブル8を、コンノ(イラ手段5によ
シマクロ命令構成のマクロ命令テーブル9に変換し、こ
のマクロ命令テーブル9によって中央処理装置1が処理
を実行する構成としたことにより、従来からの対話型の
マンマシン性を維持しつつ、オンライン時の処理を従来
のインタプリティブな処理に比較して約20倍程尚速と
し得る効果がおる。また、コンパイラ手段5を各言語仕
様に拡張することにより、マイクロコントローラにおけ
る汎用プログラミングと専用プログラミングとの共存、
更に上位側算機でのクロスコンパイルの手法の確立等を
実現し得る効果がある。
以上記述した如く本発明によれば、高速処理が可能な対
話型プログラミング方式の命令語処理方法を提供するこ
とができる。
話型プログラミング方式の命令語処理方法を提供するこ
とができる。
第1図は本発明の命令語処理方法の一実施例を示すブロ
ック図、第2図は本実施例の図式プログラムとオブジェ
クトテーブルとを示したブロック図、第3図は第1図に
示したコンパイラ手段の詳細例を示すブロック図、第4
図はマクロ命令テーブル作成手段の構成を示す一ブロッ
ク図、第5図はメモリ上のマクロ命令構成を示すブロッ
ク図、第6図(a)及び(b)は本実施例の図式プログ
ラムとマクロ命令テーブルの詳細例を示したブロック図
である。 1・・・中央処理装置、4・・・メモリ、5・・・コン
パイラ手段、8・・・オブジェクトテーブル、9・・・
マクロ命令テーブル、10・・・各種処理モジュール群
、11・・・図式プログラム。 代理人 弁理士 111I4 図 2,5 晃 5 図 ′)白 ろ [七] (b)
ック図、第2図は本実施例の図式プログラムとオブジェ
クトテーブルとを示したブロック図、第3図は第1図に
示したコンパイラ手段の詳細例を示すブロック図、第4
図はマクロ命令テーブル作成手段の構成を示す一ブロッ
ク図、第5図はメモリ上のマクロ命令構成を示すブロッ
ク図、第6図(a)及び(b)は本実施例の図式プログ
ラムとマクロ命令テーブルの詳細例を示したブロック図
である。 1・・・中央処理装置、4・・・メモリ、5・・・コン
パイラ手段、8・・・オブジェクトテーブル、9・・・
マクロ命令テーブル、10・・・各種処理モジュール群
、11・・・図式プログラム。 代理人 弁理士 111I4 図 2,5 晃 5 図 ′)白 ろ [七] (b)
Claims (1)
- 1、 オペレータが処理モジュールに対応するキーを押
しながら、表示装置の画面上に作成する図式プログラム
中の各処理モジュールに対応して作成されるオブジェク
トテーブルを備えたデータ処理装置において、オフライ
ン時に、前記オブジェクトテーブルを処理計算機のマク
ロ命令から成るマクロ命令テーブルに変換するコンパイ
ラ手段を設け、オンライン時に、前記マクロ命令テーブ
ルを前記処理計算機が処理することを特徴とする命令語
処理方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11672082A JPS598055A (ja) | 1982-07-07 | 1982-07-07 | 命令語処理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11672082A JPS598055A (ja) | 1982-07-07 | 1982-07-07 | 命令語処理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS598055A true JPS598055A (ja) | 1984-01-17 |
Family
ID=14694136
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP11672082A Pending JPS598055A (ja) | 1982-07-07 | 1982-07-07 | 命令語処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS598055A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62177032U (ja) * | 1986-04-08 | 1987-11-10 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS50134344A (ja) * | 1974-04-10 | 1975-10-24 | ||
| JPS5636705A (en) * | 1979-09-04 | 1981-04-10 | Fanuc Ltd | Sequence program translation system of programmable sequence controller |
| JPS5694405A (en) * | 1979-12-27 | 1981-07-30 | Toshiba Corp | Sequence controller |
-
1982
- 1982-07-07 JP JP11672082A patent/JPS598055A/ja active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS50134344A (ja) * | 1974-04-10 | 1975-10-24 | ||
| JPS5636705A (en) * | 1979-09-04 | 1981-04-10 | Fanuc Ltd | Sequence program translation system of programmable sequence controller |
| JPS5694405A (en) * | 1979-12-27 | 1981-07-30 | Toshiba Corp | Sequence controller |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62177032U (ja) * | 1986-04-08 | 1987-11-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5504902A (en) | Multi-language generation of control program for an industrial controller | |
| US6411858B1 (en) | Method of and apparatus for automatically generating control programs for computer controlled system | |
| US7543281B2 (en) | Disabling and conditionally compiling graphical code in a graphical program | |
| US20040034847A1 (en) | Programmatically analyzing and modifying a graphical program | |
| JPH05507376A (ja) | 機械コントローラ/プロセスコントローラ用グラフィック・プログラム・インタフェース | |
| JPS598055A (ja) | 命令語処理方法 | |
| JP2000112737A (ja) | プログラム作成装置 | |
| CN109522009A (zh) | 桁架上下料机器人控制程序的编写方法 | |
| CN118092317A (zh) | 一种基于OpenPLC和LinuxCNC的数控方法 | |
| JPS62214443A (ja) | エミユレ−シヨン実行方法 | |
| JP2002268896A (ja) | 制御プログラム作成方法とその装置 | |
| JPH11338521A (ja) | 制御装置 | |
| KR100423742B1 (ko) | 순차기능챠트에 의한 전용 제어 시스템 | |
| JP2554169B2 (ja) | データ駆動型プロセッサの相対ランク解析方式 | |
| JPS59191614A (ja) | ロボツトの制御装置 | |
| JPH0272407A (ja) | ラダー・プログラム変換装置 | |
| JP3331357B2 (ja) | プログラマブルコントローラ | |
| JPS6361329A (ja) | プログラム作成装置 | |
| JPH02227703A (ja) | プログラマブルコントローラシステム | |
| JPH01195505A (ja) | 数値制御装置 | |
| JPH11167409A (ja) | 並列実行言語で動作するプログラマブルコントローラ | |
| Gillespie et al. | External data interface tools for the Particle Beam Optics Laboratory | |
| JPS6232557A (ja) | 通信プロトコ−ル変換装置 | |
| JPH0327453A (ja) | プログラム文指定処理方式 | |
| JPS62171036A (ja) | コンパイラのモジユ−ル共用方式 |