JPH05204636A - ロードアドレス設定方法 - Google Patents

ロードアドレス設定方法

Info

Publication number
JPH05204636A
JPH05204636A JP349692A JP349692A JPH05204636A JP H05204636 A JPH05204636 A JP H05204636A JP 349692 A JP349692 A JP 349692A JP 349692 A JP349692 A JP 349692A JP H05204636 A JPH05204636 A JP H05204636A
Authority
JP
Japan
Prior art keywords
address
load
functional block
base register
block
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
JP349692A
Other languages
English (en)
Inventor
Tamaru Fukushima
田丸 福島
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 JP349692A priority Critical patent/JPH05204636A/ja
Publication of JPH05204636A publication Critical patent/JPH05204636A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】大規模なプログラムシステムで分割された機能
ブロックを作成するとき、プログラムに組込まれたロー
ドアドレス情報の変更の手間の軽減をはかる。 【構成】複数の分割された機能ブロック11,12,…
それぞれに対応して割当てたベースレジスタ21,2
2,…を備え、このベースレジスタ21,22,…に対
応する機能ブロック11,12,…の先頭アドレスa
1,a2,…を設定し、機能ブロック1i内のアドレス
ポイントへのアクセス命令30には、ベースレジスタR
iの内容aiと、機能ブロック1i内の先頭アドレスa
iからアドレスポイントまでの相対アドレスbとを設定
し、この設定した両者の和(ai+b)を実行アドレス
としてアクセス処理する。 【効果】ベースレジスタの内容を任意に設定して能動的
に機能ブロックのロード処理を可能とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラムシステムの
プログラムのロードアドレス設定方法に関し、特に複数
の機能ブロックに分割された大規模システムの各機能ブ
ロックのロードアドレス情報の設定方法に関する。
【0002】
【従来の技術】従来、この種のプログラムのロードアド
レス設定方法は、ファイル化時に指定されたプログラム
のロードアドレスが、リンケージエディターの処理によ
り、本体プログラムに絶対のロードアドレス情報として
組み込まれていた。
【0003】従ってプログラムは、ファイル化時に指定
されたロードアドレス情報に従って、メモリ空間の指定
された位置にロード処理される。
【0004】このため、ロード処理されたプログラムの
ロード位置を変更する場合、プログラム本体にプログラ
ムのロードアドレス情報がすでに固定的に組み込まれて
しまっているために、そのまま移動してロード処理する
ことができず、再度リンケージエディター処理を実行す
る。
【0005】すなわち、ロードアドレス情報をプログラ
ム本体に組み直し、新しいロードモジュールを作成し直
すことによって、プログラムのロード位置が変更され
る。
【0006】
【発明が解決しようとする課題】上述した従来のロード
アドレス設定方法は、大規模なプログラムシステムを機
能ブロックに分割して作成した状態で、一つの機能ブロ
ックに内容の変更が生じた場合、変更機能ブロックの変
更により、変更機能ブロックのプログラムサイズが拡大
した時、他の未変更機能ブロックのプログラムのロード
位置の移動が必要となるが、プログラムのロードアドレ
ス情報が既にプログラム本体に固定的に組み込まれてし
まっているため、他の機能ブロックのアドレス情報の変
更を伴う移動ができない。
【0007】このため、移動する必要がある場合は、他
の移動の必要があるすべての機能ブロックについて、再
度リンケージエディター処理を行い、すでに各機能ブロ
ックのプログラム本体に組み込まれたプログラムのロー
ドアドレス情報を変更しなければならなず、手間がかか
るという問題点があった。
【0008】本発明の目的は、分割した機能ブロックご
とにベースレジスタを割当て、このベースレジスタに、
対応する機能ブロックの先頭アドレスを設定し、機能ブ
ロック内のアドレスポイントへのアクセス命令にはベー
スレジスタの内容と、アドレスポイントが属する機能ブ
ロック内の先頭アドレスからアドレスポイントまでの相
対アドレスとを設定することにより、上記問題点を解決
したロードアドレス設定方法を提供することにある。
【0009】
【課題を解決するための手段】本発明によるロードアド
レス設定方法は、大規模システムのプログラムを分割し
た複数の機能ブロックのそれぞれでロードアドレスを設
定するロードアドレス設定方法において、前記機能ブロ
ックのそれぞれに専用に割当てたベースレジスタを配備
し、メモリ空間に機能ブロックをロード処理するとき、
この機能ブロックに割当てられたベースレジスタにこの
機能ブロックのロード先頭アドレスを設定し、アドレス
ポイントへのアクセス命令には、このアドレスポイント
が属する機能ブロックの先頭アドレスからアドレスポイ
ントまでの相対アドレスと、アドレスポイントが属する
機能ブロックに割当てられたベースレジスタとを設定
し、アドレスポイントのアドレス検索には前記相対アド
レスと前記ベースレジスタの内容アドレスとを加算す
る。
【0010】
【実施例】次に、本発明について図面を参照して説明す
る。図1は本発明の一実施例を示すブロック対応図であ
る。
【0011】図示するように、システムプログラムはメ
モリ空間10上で機能ブロック11,12,…,1iに
分割され、これら機能ブロック11,12,…1iのそ
れぞれに対応するベースレジスタ20としてベースレジ
スタ(R1)21,(R2)22,…,(Ri)2iが
配備される。
【0012】このベースレジスタは、ハードウェア上、
分割される機能ブロックの数を満足するだけの数が設備
される。
【0013】メモリ空間10での機能ブロック11,1
2,…,1iのそれぞれの先頭アドレスa1,a2,
…,aiが、対応するベースレジスタ(R1)21,
(R2)22,…,(Ri)2iのそれぞれにアドレス
値a1,a2,…,aiとして設定されている。
【0014】次に、図1を参照して、アドレス設定方法
について説明する。
【0015】まず、機能ブロック11の命令30が機能
ブロック1iのデータ31にアクセスをする場合、命令
30のオペランド部には機能ブロック1iに対応したベ
ースレジスタ番号情報Riと、機能ブロック1iの先頭
から、データ31が存在する位置までの相対アドレス値
bとが設定されている。
【0016】データ31へのアクセスのためのアドレス
計算は命令30のオペランド部で指定したベースレジス
タ(Ri)2iの内容aiと、同じくオペランド部で指
定した相対アドレス値bが加算されることによって行な
われる。
【0017】従って、アクセスアドレス値〔ai+b〕
が演算され、命令30はデータ31にアクセスができ
る。
【0018】アドレス設定は以上のようにベースレジス
タと機能ブロック内相対アドレス情報によって行なわ
れ、アクセス命令のオペランド部には、ベースレジスタ
番号情報と、機能ブロック内相対アドレス情報が設定さ
れることとなる。
【0019】すなわち、ファイル化処理でのプログラム
本体へのロードアドレス情報の組み込みは、絶対ロード
アドレス情報が組込まれるのではなく、機能ブロックに
対応したベースレジスタ番号情報と、機能ブロック内相
対アドレス情報のみが組み込まれるにとどまる。
【0020】従って、絶対ロードアドレス情報の設定
は、このファイル化処理の時点ではなく、次の工程であ
る機能ブロックのターゲットマシンへのロード時に、ベ
ースレジスタ値を設定することによって実行される。
【0021】次に、機能ブロックのターゲットマシンへ
のロード処理は次のようになる。ファイル化処理を経た
機能ブロック11,12,…,1iは、ターゲットマシ
ンのメモリ空間10上にロード処理される。まず、機能
ブロック11のロード先頭アドレスa1が決定されa1
アドレスにより機能ブロック11がメモリ空間10にロ
ード処理される。
【0022】これにつづいて、機能ブロック11がロー
ド処理されたところのロード先頭アドレスa1の値が、
機能ブロック11に対応したベースレジスタ(R1)2
1に設定される。
【0023】次に、機能ブロック12が機能ブロック1
1の最終ロードアドレスの次のロードアドレスa2によ
りロード処理される。
【0024】同様にして、機能ブロック12のロード先
頭アドレスa2の値が機能ブロック12に対応したベー
スレジスタ(R2)22に指定される。同様にして、機
能ブロック1iのロード処理と、アドレス値aiのベー
スレジスタ(Ri)2iへの設定が行なわれる。
【0025】このように、機能ブロック11,12,1
iがメモリ空間10上にロード処理され、機能ブロック
11,12,1iに対応するベースレジスタ(R1)2
1,(R2)22,(Ri)2iにそれぞれのロード先
頭アドレスa1,a2,aiが設定される。この時点
で、絶対ロードアドレス情報が確定し、アドレスポイン
トへのアクセス処理が可能となる。
【0026】次に、このような状況下で、機能ブロック
に変更が生じ、変更により機能ブロックの大きさが拡大
した場合、変更後の機能ブロックがどのように再ロード
処理されるかを図2を参照して説明する。
【0027】図2は図1において機能ブロック変更時の
一例を示すロード変更様態図である。
【0028】今、メモリ空間10の機能ブロック11
に、機能ブロックの大きさが拡大するような変更が生
じ、一方機能ブロック12,13には変更はないとす
る。この時、機能ブロック11は内容の変更があるため
再ファイル化処理が行なわれて新しいロードモジュール
が作成され、機能ブロック41としてメモリ空間10上
の以前と同様のアドレスa1から再ロードされる。
【0029】この時、機能ブロック41のロード先頭ア
ドレスa1は以前と変わっていないため、変更後の機能
ブロック41に対応するベースレジスタ(R1)51に
は以前と同様のアドレスa1が設定される。
【0030】次に、機能ブロック12は変更がないた
め、再ファイル化処理は行なわれず以前作成したロード
モジュールがそのまま機能ブロック42として機能ブロ
ック41の最終アドレスの次のアドレスa5から再ロー
ド処理される。
【0031】この時、機能ブロック42のロード先頭ア
ドレスa5が以前とは変わっているため、変更後の機能
ブロック42に対応するベースレジスタ(R2)52に
はアアドレスa5が設定される。
【0032】同様にして、機能ブロック13は再ファイ
ル化処理なしで、機能ブロック43として、機能ブロッ
ク42の最終アドレスの次のアドレスa6から再ロード
処理され、変更後の機能ブロック43に対応するベース
レジスタ(R3)53にはアドレスa6が設定される。
【0033】以上のように、変更なしの機能ブロックの
ロード位置の移動については、機能ブロック対応のベー
スレジスタ値が変更されることによって、移動のための
変更がすべて吸収され、再ファイル化処理によるアクセ
ス命令のオペランド部の変更か必要ない。このため、内
容に変更のない機能ブロックについては、再ファイル化
処理を行うことなく機能ブロックのロード位置を自由に
変更することができることとなる。
【0034】従って、機能ブロック単位でのプログラム
の部分独立作成を可能にするので、プログラムシステム
の作成工数が削減できるという効果もある。
【0035】
【発明の効果】以上説明したように本発明は、複数の分
割された機能ブロックそれぞれに対応するベースレジス
タを備え、このベースレジスタに対応する機能ブロック
の先頭アドレスを設定し、機能ブロック内のアドレスポ
イントへのアクセス命令にはベースレジスタの内容と、
機能ブロック内の先頭アドレスからアドレスポイントま
での相対アドレスとを設定し、この設定した両者の値の
和を実行アドレスとしてアクセス処理することにより、
ベースレジスタの内容を任意に設定して能動的に機能ブ
ロックのロード処理を可能とするので、変更処理の手間
が少なく工数負担を軽減する効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例を示すブロック対応図であ
る。
【図2】図1において機能ブロック変更時の一例を示す
ロード変更様態図である。
【符号の説明】
10 メモリ空間 11,12,1i 機能ブロック 20,21,22,2i ベースレジスタ(R1,R
2,Ri) 30 命令 31 データ a1,a2,ai 先頭アドレス(値) b 相対アドレス(値)

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 大規模システムのプログラムを分割した
    複数の機能ブロックのそれぞれでロードアドレスを設定
    するロードアドレス設定方法において、 前記機能ブロックのそれぞれに専用に割当てたベースレ
    ジスタを配備し、 メモリ空間に機能ブロックをロード処理するとき、この
    機能ブロックに割当てられたベースレジスタにこの機能
    ブロックのロード先頭アドレスを設定し、 アドレスポイントへのアクセス命令には、このアドレス
    ポイントが属する機能ブロックの先頭アドレスからアド
    レスポイントまでの相対アドレスと、アドレスポイント
    が属する機能ブロックに割当てられたベースレジスタと
    を設定し、 アドレスポイントのアドレス検索には前記相対アドレス
    と前記ベースレジスタの内容アドレスとを加算すること
    を特徴とするロードアドレス設定方法。
JP349692A 1992-01-13 1992-01-13 ロードアドレス設定方法 Withdrawn JPH05204636A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP349692A JPH05204636A (ja) 1992-01-13 1992-01-13 ロードアドレス設定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP349692A JPH05204636A (ja) 1992-01-13 1992-01-13 ロードアドレス設定方法

Publications (1)

Publication Number Publication Date
JPH05204636A true JPH05204636A (ja) 1993-08-13

Family

ID=11558954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP349692A Withdrawn JPH05204636A (ja) 1992-01-13 1992-01-13 ロードアドレス設定方法

Country Status (1)

Country Link
JP (1) JPH05204636A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766448B2 (en) 2000-01-13 2004-07-20 Nec Corporation Microcomputer for transferring program data to an internal memory from an external memory connected via a bus and a method therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766448B2 (en) 2000-01-13 2004-07-20 Nec Corporation Microcomputer for transferring program data to an internal memory from an external memory connected via a bus and a method therefor

Similar Documents

Publication Publication Date Title
JP2569092B2 (ja) 入出力機器制御プログラムのアドレス解決方法
JPH06266563A (ja) 複数同時オブジェクト・バージョンをサポートする効率的ルータ
US20070006201A1 (en) Method and system for generating and applying patches to a computer program concurrently with its execution
US20050144608A1 (en) Operating system allowing running of real-time application programs, control method therefor, and method of loading dynamic link libraries
JPH05204636A (ja) ロードアドレス設定方法
JP2000010791A (ja) グロ―バルレジスタを初期化するための方法、コンピュ―タプログラム製品及び装置
JPH01207824A (ja) モジュール結合制御方式
JP2918570B2 (ja) 中央演算処理装置
JPS60241135A (ja) アドレス生成方式
JP3137094B2 (ja) シミュレーション方法、シミュレーション装置及びその記録媒体
JPH0390931A (ja) Rom化プログラムの生成方法
JPH0447337B2 (ja)
JPH03192430A (ja) 入力データ処理方式
JPH0318928A (ja) システムロード処理方法およびデイスク制御装置
JPH02230333A (ja) 変数領域割当て方式
JPH06208512A (ja) 仮想ディスク装置
JPH0553827A (ja) ダイナミツクリンク最適化方式
JPS6158042A (ja) マイクロプログラム制御方式
JPH06175857A (ja) プログラム生成処理装置
JPH01154264A (ja) 仮想計算機システムにおける動的チヤネルアドレス変換方式
JPH01116849A (ja) 仮想計算機アドレス変換方式
JPS63178345A (ja) デ−タベ−スアクセス処理方式
JPH0740227B2 (ja) デ−タのオ−バレイセグメント割当て方式
JPS6353660A (ja) 仮想記憶空間制御方式
JPH0736676A (ja) アセンブル・プログラム自動配置装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990408