JPH0212332A - 複数の同一命令を含むプログラムの処理方式 - Google Patents

複数の同一命令を含むプログラムの処理方式

Info

Publication number
JPH0212332A
JPH0212332A JP63161152A JP16115288A JPH0212332A JP H0212332 A JPH0212332 A JP H0212332A JP 63161152 A JP63161152 A JP 63161152A JP 16115288 A JP16115288 A JP 16115288A JP H0212332 A JPH0212332 A JP H0212332A
Authority
JP
Japan
Prior art keywords
program
instructions
same
instruction
same instructions
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
JP63161152A
Other languages
English (en)
Inventor
Akihiro Ikeda
池田 明浩
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.)
PFU Ltd
Original Assignee
PFU 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 PFU Ltd filed Critical PFU Ltd
Priority to JP63161152A priority Critical patent/JPH0212332A/ja
Publication of JPH0212332A publication Critical patent/JPH0212332A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 計算機のプログラム処理方式に関し。
同一命令を多数含むプログラムにおいて、それら同一命
令の修正を命令の個数に依存することなく簡単に修正で
きる手段を実現することを目的とし。
複数の同一命令を含むプログラムを、プログラム中の複
数の同一命令のそれぞれの命令に代えてその位置に次の
同一命令の位置を示す情報を設定した第1の形式を用い
て管理し。
第1の形式のプログラムを初期プログラムローディング
する際に、上記次の同一命令の位置を示す情報を順次検
出し、対応する同一命令に書き替えて、実行可能な第2
の形式に変換する構成をもつ。
〔産業上の利用分野〕
本発明は、計算機のプログラム処理方式に関し。
特に同一種類の命令を多数含むプログラムにおいて、そ
の命令修正を容易にするプログラム処理技術に関する。
たとえば]10ボートをアドレスj旨定して入出力を行
う命令を多数含むプログラムにおいて。
I10ポートのアドレス変更があると、関連する多数の
入出力命令を修正しなければならず、負担が大きくなる
。本発明は、このような場合の修正を容易にするプログ
ラム処理方式を捷供する。
〔従来の技術と発明が解決しようとするa!題〕従来の
計3Eaシステムでは、制御プログラム内で共通のI1
0ボートにデータを入出力する場合。
入出力用の共通サブルーチンあるいはマクロ命令を介し
て行うのが一般的である。
第5図に1例を示す。図示された例は、 !i1mプロ
グラム(O3)を、■10ボートなどのハードウェアに
依存したプログラム(ファームウェア)1の群とハード
ウェアに依存しないプログラム(ソフトウェア)2の群
に分けて制御を行うシステムのものである。
この場合、ハードウェアに依存しないプログラム2は、
入出力などのハードウェアに依存した処理を行うとき、
CALL命令あるいはINT命令を用いて、ハードウェ
アに依存したプログラムlに分岐する。
このようなプログラム間の分岐あるいは復帰の際には、
スタックの退避、復元などのプログラム切り換え処理の
ために、かなりのプログラムステップ数が費され、これ
がオーバーヘッドとなって処理性能を低下させるという
問題があった。
一方、この処理性能低下を防ぐために、制御プログラム
中でIN命令あるいはOUT命令を用いて直接入出力制
御を行う方式もとられていた。しかしこの場合、プログ
ラムステップ数は削減されるが、システムの構成変更な
どでI10ポートのアドレスが変更されると、変更され
たI10ボートを使用する全てのIN命令あるいはOU
T命令を修正しなければならず、修正ステップ数が多く
なるという問題かあ、た。
本発明は、同一命令を多数含むプログラムにおいて、そ
れら同一命令の修正を命令の個数に依存することなく簡
単に修正できる手段を実現することを目的とする。
〔課題を解決するための手段〕
本発明は、同一命令を多数含むプログラムについて、プ
ログラムのライブラリ管理状態ではそれらの同一命令を
プログラムから抜き出して位置情報だけ設定しておき、
IPL(初期プログラムローディング)時に元のあるい
は変更された同一命令を書き込むことにより、同一命令
の変更を容易にするものである。
第1図は1本発明の原理図である。
第1図において 11は、同一命令を多数含むプログラムが格納されてい
るプログラム管理ファイルである。
12は、第1形式のプログラムであり、プログラム中の
各同一命令位置には、同一命令に代えて。
次の順位の同一命令の位置を指すポインタをオペランド
としてもつデータ定義命令DCWI 2 a。
12 b、  12 c、  12dを用いてチエイン
が張られている。
13は、主記憶である。
14は、主記憶13上にIPLされた実行可能な第2形
式のプログラムであり、その中の各148で示す同一命
令は第1形式のプログラム12中のデータ定義命令DC
W12aないし12dを、後述する同一命令15aで書
き替えたものである。
15は、初期化モジュールであり、システム立上げ時に
起動されて、IPLなとの初期化処理を行う。特に本発
明の場合、第1形式のプログラム12をIPLして、別
途管理されている同一命令15aを用いプログラム12
中のDCW12aないし12dを書き替え、第2形式の
プログラム14に変換する。なお同一命令15aは、容
易に変更可能に管理される。
〔作用〕
第1図に示されている本発明の原理的構成に基づく動作
を説明する。
初期化モジュール15は、起動されたとき、プログラム
管理ファイル11から第1形式のプログラム12を読み
出し、主記憶13にロードする(IPL)。
続いて初期化モジュール15は、ロードされている第1
形式のプログラム12中のチエインを構成するデータ定
義命令DCW12aないし12dを順次検出し、それぞ
れ別に管理している同一命令15aで置き換えてゆき、
第2形式のプログラム14に変換する。
同−曲管がIN命令とOUT命令のように複数IImあ
る場合には、それぞれの命令の種類ごとに別のチエイン
を張り、同一命令15&も対応して複数種類用意される
。このとき、チエインと同一命令との対応関係を識別可
能にする適当な情報が付加される。
同一命令を変更する必要が生じた場合には、初期化モジ
ュール15内の同一命令15mのみを対象として修正す
ればよく1次のIPLで変更された第2形式のプログラ
ムが容易に生成される。
〔実施例〕
本発明の実施例を、第2図ないし第4図にしたがって説
明する。
第2図は1本発明の1実施例のシステム空間構成図であ
る。
第2図において、20はシステム空間、21はシステム
固定域、22はプログラム管r1テーブル。
22aは後述されるモジュール25の先頭位置を示すポ
インタ、23はハードウェア(ファームウェア)との連
絡領域、23aはモジュール中に多数含まれる!N命令
やOUT命令などの同一のハード依存命令、24は制御
プログラムを構成するモジュール、25はハード依存命
令23aを多数含むモジュール、26はシステム初期化
モジュールであり、[PL時に走行し、モジュール25
にハード依存命令23aを書き込む機能をもつ。
この実施例において、モジエール25は第1図のプログ
ラム14に相当し、システム初期化モジュール26は第
1図の初期化モジュール15に相当し、ハード依存命令
23aは第1図の同一命令15aに相当する。
第3図は、第2図の実施例中の同一ハード依存命令を多
数含むモジュール25の第1形式による記述例であり(
第1図のプログラム12に相当)。
8086系の命令を用いて記述したものである。
次に内容を簡単に説明する。
■は、モジュールの入口点アドレスであり、このアドレ
スはプログラム管理テーブル22にポインタ22aとし
て設定されている。
通常、各モジュールの入口点は、他のモジュールとのリ
ンケージに使用されるので、−虫には■の分岐命令JM
PSを用いて■へとび、ここから機能ルーチンを開始す
る。
■は!N命令のチエインの先頭であり、lN001のア
ドレスをDCWのオペランドにもつ。
■はOUT命令のチエインの先頭であり、0UTOOI
のアドレスをDCWのオペランドにもつ。
アドレスlN0OIには次のIN命令の入口点からの相
対アドレスlN0O2をオペランドにもつDCWが置か
れ、同様にして順次のIN命令の入口点からの相対アド
レスをポインタでリンクして1点線で示すようなチエイ
ンを張る。最後のIN命令の位置には、アドレスとして
存在し得ない値(この場合はX ’ FFFF ’)を
オペランドにもつDCWを置く。
OUT命令についても同様な方法で1点鎖線で示すよう
なチエインが張られる。
なお、IN命令のチエインの先頭アドレスは9人口点+
2′であり、OUT命令のチエインの先頭アドレスは゛
入口点+4′で与えられる。この■の人口点から■また
は■の各点のアドレスは゛入口点+α′で表わされる。
αの値はシステム初期化モジュール2bによって意識さ
れる。
第4図は、第2図の実施例中のシステム初期化モジュー
ル26の処理手順を示すフローである。
次にフロー中のステップ■ないし■について簡噴に説明
する。なお必要に応じて第2図および第3図が参照され
る。
■: IPLの開始とともに9プログラム管理テーブル
22のポインタ22aから、モジュール25の入口点ア
ドレスを取得する。
■:チェインの先頭までの相対アドレスαΦ値を求め、
■の入口点アドレスに加算する。
■:■で求めたアドレスから最初の同一命令(IN命令
10UT命令)の書き込み番地を取得する(第3図■、
■)。
■;■で取得した番地がチエインの最終を示していると
き(X’FFFF’に基づく場合)は■を実行し、他の
場合は■を実行する。
■:命令書き込み番地のDCWから次の命令書き込み番
地を取得する。
■:■のDCWの位置に238の同一命令(IN命令1
0UT命令)を書き込み、■に戻る。
■:■でチエイン最終が判定されたとき、同様な命令書
き込み処理を必要とするモジュールが他にあれば■に戻
り、なければ終了する。
〔発明の効果〕
本発明によれば、複数の同一命令を含むプログラムが命
令位置を示すチエインを張った状態で管理され、[PL
時に同一命令を実際に書き込むため、I10ボートアド
レスの変更などのプログラムに対する変更が必要な場合
も、書き込み用の命令を変更するだけで済ますことがで
き、変更に要する負担を著しく軽減することができる。
またこの結果、制j11プログラムなどに多数のハード
依存命令を含ま拷ることが可能となり、処理性能のよい
プログラムの使用が容易となる。
【図面の簡単な説明】 第1図は本発明の原理図、第2図は本発明の1実施例の
システム空間構成図、第3図は第1形式で記述されたモ
ジュールの処理手順を示す実施例フロー図、第4図はシ
ステム初期1ヒモジュールの処理手順を示す実施例フロ
ー図、第5図は従来の制御プログラムの説明図である。 第1図中。 11ニブログラム管理フアイル 12:第1形式のプログラム 12a 〜12d:データ定義命令DCW13:主記憶 14:第2形式のプログラム 15:初期化モジュール 特許出願人 株式会社ピーエフニー 代理人 弁理士 長谷用 文廣(外2名)本発明の原f
!因 第1図 本発明の1実施例のシステム空間構成2笛つ口 第1形式で記述されたモジュールの処理手順を示す実施
例フロー図従来の制御プログラムの説明図 第5図

Claims (1)

  1. 【特許請求の範囲】 複数の同一命令を含むプログラム(14)の処理システ
    ムにおいて、 上記プログラム(14)を、プログラム(14)中の複
    数の同一命令のそれぞれの命令に代えて、その位置に次
    の同一命令の位置を示す情報を設定した第1の形式を用
    いて管理し、 上記第1の形式のプログラムを初期プログラムローディ
    ングする際に、上記次の同一命令の位置を示す情報を順
    次検出し、対応する同一命令に書き替えて、実行可能な
    第2の形式に変換することを特徴とする複数の同一命令
    を含むプログラムの処理方式。
JP63161152A 1988-06-29 1988-06-29 複数の同一命令を含むプログラムの処理方式 Pending JPH0212332A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63161152A JPH0212332A (ja) 1988-06-29 1988-06-29 複数の同一命令を含むプログラムの処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63161152A JPH0212332A (ja) 1988-06-29 1988-06-29 複数の同一命令を含むプログラムの処理方式

Publications (1)

Publication Number Publication Date
JPH0212332A true JPH0212332A (ja) 1990-01-17

Family

ID=15729583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63161152A Pending JPH0212332A (ja) 1988-06-29 1988-06-29 複数の同一命令を含むプログラムの処理方式

Country Status (1)

Country Link
JP (1) JPH0212332A (ja)

Similar Documents

Publication Publication Date Title
JPH0721034A (ja) 文字列複写処理方法
JPH0212332A (ja) 複数の同一命令を含むプログラムの処理方式
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JP2000122876A (ja) 情報処理装置
JP2747164B2 (ja) ソフトウェア・シミュレータ
JP2582294B2 (ja) モジュール間結合実行制御方式
JPS6378265A (ja) 処理制御方式
KR960029969A (ko) 파이프라인 처리기능을 갖는 데이타프로세서
KR100436003B1 (ko) 디바이스드라이버적재방법
JPH09198245A (ja) ディジタルシグナルプロセッサ
JPS6325372B2 (ja)
JPH0695868A (ja) ソフトウェア管理方式
JPS5875250A (ja) デジタル情報処理装置
JPS63223982A (ja) 図形処理装置
JPH02165358A (ja) 学習機能付きプログラムロード方式
JPS63233438A (ja) 情報処理装置
JPH04175822A (ja) 修正履歴管理方式
JPH05241814A (ja) パッチ管理装置
JPH04127366A (ja) リストベクトル処理装置
JPH03260726A (ja) マイクロサブルーチン制御方式
JPH05298098A (ja) アクセラレータの制御プログラム変更方式及び方法
JPS58169247A (ja) 高速命令読出し方式
JPS6324430A (ja) 並列化初期プログラムロ−デイング方式
JPH04127367A (ja) リストベクトル処理装置
JPH023827A (ja) コンピュータ装置