JPH01310437A - ロードモジュール生成方式 - Google Patents

ロードモジュール生成方式

Info

Publication number
JPH01310437A
JPH01310437A JP14136588A JP14136588A JPH01310437A JP H01310437 A JPH01310437 A JP H01310437A JP 14136588 A JP14136588 A JP 14136588A JP 14136588 A JP14136588 A JP 14136588A JP H01310437 A JPH01310437 A JP H01310437A
Authority
JP
Japan
Prior art keywords
segment
instruction
pseudo
program
destination
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
JP14136588A
Other languages
English (en)
Inventor
Hidemasa Saito
齋藤 英雅
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 JP14136588A priority Critical patent/JPH01310437A/ja
Publication of JPH01310437A publication Critical patent/JPH01310437A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はロードモジュール生成方式に関し、特に、1つ
の機能を構成するプログラムのメモリ単位をセグメント
と呼ばれる空間(セグメント空間)によって管理する情
報処理装置において、ソースプログラムからロードモジ
ュールを生成する際に自動的にセグメントの割り付けを
行うと共に、セグメントを意識せずに記述された分岐命
令を実命令に変換する機能を有したものである。
〔従来の技術〕
従来より、長いプログラムのプログラミングを容易にす
るため、または、−時に格納できるメモリ容量を考慮し
て適当なサイズのプログラムにするため等の理由から、
1つの機能を構成するプログラムを格納するメモリ単位
をセグメント空間によって管理することが行われている
ところで、この種の情報処理装置において、複数のセグ
メント間にまたがるプログラムを作成する場合、プログ
ラム中で使用する分岐命令の記述にあたっては、同一セ
グメント内への分岐命令であるか、あるいは異なるセグ
メントへの分岐命令であるかを識別しなければならず、
実際にはプログラム開発者がプログラム設計時にセグメ
ント配置を見積り、ソースプログラム上に直接にセグメ
ント内分岐命令あるいはセグメント外分岐命令を記述す
るようにしていた。
〔発明が解決しようとする課題〕
上述したように、従来は、プログラムが複数のセグメン
ト間にまたがるような場合、プログラム設計時にそのセ
グメント配置を見積り、各セグメントの相互関係を考慮
してソースプログラム上に直接にセグメント内分岐命令
、セグメント外分岐命令を記述しなければならなかった
ため、・初心者に分かりにくい。
・実際に作成したプログラムが見積りに合わなかった場
合、設計からやり直し、ソースプログラムの大規模な修
正が必要となる。
・ソースプログラムにセグメント内分岐命令とセグメン
ト外分岐命令とが混在するため、保守、改造が困難であ
る。
・設計と異なったセグメント配置に変更することが困難
である。
といった欠点があった。
本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、ソースプログラムの作成にあたって
セグメント配置を意識せずに分岐命令の記述が行えるロ
ードモジュール生成方式を従供することにある。
〔課題を解決するための手段〕
本発明は上記の目的を達成するため、1つの機能を構成
するプログラムのメモリ単位をセグメントと呼ばれる空
間によって管理する情報処理装置におけるソースプログ
ラムからロードモジュールを生成する方式において、 ソースプログラム上の外部参照を必要とする分岐命令を
擬(以命令として目的プログラムに出力する擬似命令出
力手段を含んだ翻訳部と、複数の目的プログラムの結合
に際して複数のセグメントとなる場合にセグメントを自
動的に割り付けるセグメント割り付け手段と、セグメン
トの割り付けが完了した後に擬似命令として出力されて
いる分岐命令をその行き先もしくは呼び先によってセグ
メント外分岐命令またはセグメント内分岐命令に置換す
る実命令出力手段とを含んだ結合編集部とを備えるよう
にしている。
〔作用〕
本発明のロードモジュール生成方式にあっては、翻訳部
の擬似命令出力手段がソースプログラム上の外部参照を
必要とする分岐命令を擬似命令として目的プログラムに
出力し、結合m1部のセグメント割り付け手段が複数の
目的プログラムの結合に際して複数のセグメントとなる
場合にセグメントを自動的に割り付けると共に、実命令
出力手段がセグメントの割り付けが完了した後に擬似命
令として出力されている分岐命令をその行き先もしくは
呼び先によってセグメント外分岐命令またはセグメント
内分岐命令に置換する。
〔実施例〕
以下、本発明の実施例につき図面を参照して説明する。
第1図φ本発明のロードモジュール生成方式の一実施例
を示す構成図である。第1図において、1はセグメント
配置を意識することなく分岐命令が記述されたソースプ
ログラムであり、磁気ディスク装置iDKもしくはフロ
ッピィディスクFD装置等に格納されている。また、2
は翻訳プログラムにより構成される翻訳部であり、ソー
スプログラム1を入力し、1回の翻訳単位毎に目的プロ
グラム41.42.・・・、4nを生成するものである
ここで、翻訳部2は、通常の翻訳機能部分以外に、ソー
スプログラム1上の外部参照を必要とする分岐命令を擬
似命令として目的プログラム41゜42、・・・、4n
に出力する擬似命令出力手段3を含んでおり、1回の翻
訳単位内に存在しない外部参照名に対する分岐命令を擬
似命令に置換する。
第2図はその置換に用いられる変換表の例を示したもの
であり、分岐命令として外部参照となる行き先、呼び先
を有した0070文、juMp文。
CALL文を擬似命令ZJMP文、ZCALL文に置換
する。
第1図において、5は目的プログラム41,42、・・
・、4nを入力し、1つのロードモジュールに結合編集
を行う結合編集プログラムにより構成される結合編集部
であり、ロードモジュール8を出力する。
ここで、結合編集部5は、通常の結合編集機能部分以外
に、複数の目的プログラムの結合に際して複数のセグメ
ントとなる場合にセグメントを自動的に割り付けるセグ
メント割り付け手段6と、セグメントの割り付けが完了
した後に擬似命令として出力されている分岐命令をその
行き先もしくは呼び先によってセグメント外分岐命令ま
たはセグメント内分岐命令に置換する実命令出力手段7
とを含んでいる。
第3図は結合編集部5のセグメント割り付け手段6によ
る割り付けの例を示したものであり、SEG#1.SE
G#2はセグメントの切れ目91゜92.93により区
画されるセグメント空間であるが、目的プログラム41
に目的プログラム42を結合し、続いて目的プログラム
43の結合を行うと破線で示すようにセグメント空間S
EG#1を越えてしまうため、目的プログラム43をセ
グメント空間SEG#2に移し、セグメント空間SEG
#2において目的プログラム43に目的プログラム44
を結合する。このようにセグメント割り付け手段6は目
的プログラムを順次結合し、結合した結果、1つのセグ
メントを越えることとなる場合に、その目的プログラム
を次のセグメントに移す動作を行う。
一方、第4図は結合編集部5の実命令出力手段7におけ
る置換に用いられる変換表の例を示したものであり、擬
似命令ZJMP文、ZCALL文が現れた場合に、その
行き先、呼び先がセグメント割り付け手段6により割り
付けられたセグメントの内か外かを判断し、セグメント
内であればそれぞれセグメント内分岐命令JMP文、C
ALL文の実命令に置換し、セグメント外であればそれ
ぞれセグメント外分岐命令JMPX文、CALLX文の
実命令に置換する。
以上の動作により、ソースプログラム1が1本のロード
モジュール8に生成され、情報処理装置において実行可
能な状態となる。
〔発明の効果〕
以上説明したように、本発明のロードモジニール生成方
式にあっては、自動的にセグメント分割が行われると共
に、分岐命令の行き先、呼び先によって自動的に実命令
に置換されるため、・セグメントを意識することなくプ
ログラム作成が行えるため、初心者にも分かりやすい。
・設計時にセグメントの配置を考慮する必要がないため
、プログラム作成が容易である。
・設計変更に柔軟に対応できる。
・ソースプログラムが分りやすく、保守、改造が容易で
ある。
といった効果がある。
【図面の簡単な説明】
第1図は本発明のロードモジュール生成方式の一実施例
を示す構成図、 第2図は第1図における擬似命令出力手段の説明図、 第3図は第1図におけるセグメント割り付け手段の説明
図および、 第4図は第1図における実命令出力手段の説明図である
。 図において、■・・・ソースプログラム、2・・・翻訳
部、3・・・擬似命令出力手段、41〜4n・・・目的
プログラム、5・・・結合編集部、6・・・セグメント
割り付け手段、7・・・実命令出力手段、8・・・ロー
ドモジュール、91〜93・・・切れ目、SEG#1.
SEG#2・・・セグメント空間。

Claims (1)

  1. 【特許請求の範囲】 1つの機能を構成するプログラムのメモリ単位をセグメ
    ントと呼ばれる空間によって管理する情報処理装置にお
    けるソースプログラムからロードモジュールを生成する
    方式において、 ソースプログラム上の外部参照を必要とする分岐命令を
    擬似命令として目的プログラムに出力する擬似命令出力
    手段を含んだ翻訳部と、 複数の目的プログラムの結合に際して複数のセグメント
    となる場合にセグメントを自動的に割り付けるセグメン
    ト割り付け手段と、セグメントの割り付けが完了した後
    に擬似命令として出力されている分岐命令をその行き先
    もしくは呼び先によってセグメント外分岐命令またはセ
    グメント内分岐命令に置換する実命令出力手段とを含ん
    だ結合編集部とを備えたことを特徴とするロードモジュ
    ール生成方式。
JP14136588A 1988-06-08 1988-06-08 ロードモジュール生成方式 Pending JPH01310437A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14136588A JPH01310437A (ja) 1988-06-08 1988-06-08 ロードモジュール生成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14136588A JPH01310437A (ja) 1988-06-08 1988-06-08 ロードモジュール生成方式

Publications (1)

Publication Number Publication Date
JPH01310437A true JPH01310437A (ja) 1989-12-14

Family

ID=15290290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14136588A Pending JPH01310437A (ja) 1988-06-08 1988-06-08 ロードモジュール生成方式

Country Status (1)

Country Link
JP (1) JPH01310437A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301533A (ja) * 1993-04-14 1994-10-28 Nec Corp データ処理装置
JP2009211491A (ja) * 2008-03-05 2009-09-17 Oki Semiconductor Co Ltd プログラム作成方法およびその装置
JP2011123719A (ja) * 2009-12-11 2011-06-23 Renesas Electronics Corp 言語処理システム、言語処理方法、及び言語処理用プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59191649A (ja) * 1983-04-15 1984-10-30 Hitachi Ltd プログラムの生成方式
JPS62205431A (ja) * 1986-03-05 1987-09-10 Nec Corp 分岐命令処理方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59191649A (ja) * 1983-04-15 1984-10-30 Hitachi Ltd プログラムの生成方式
JPS62205431A (ja) * 1986-03-05 1987-09-10 Nec Corp 分岐命令処理方式

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301533A (ja) * 1993-04-14 1994-10-28 Nec Corp データ処理装置
JP2009211491A (ja) * 2008-03-05 2009-09-17 Oki Semiconductor Co Ltd プログラム作成方法およびその装置
JP2011123719A (ja) * 2009-12-11 2011-06-23 Renesas Electronics Corp 言語処理システム、言語処理方法、及び言語処理用プログラム

Similar Documents

Publication Publication Date Title
JPH11250112A (ja) ハードウェア合成方法およびハードウェア合成装置並びにハードウェア合成プログラムを記録した記録媒体
JPH01310437A (ja) ロードモジュール生成方式
JP4486754B2 (ja) Vliwプロセッサの圧縮されたプログラムを生成して実行する方法
JP2000122876A (ja) 情報処理装置
JP2018206195A (ja) 演算システム、演算システムの制御方法およびプログラム
JP2000089966A (ja) 既存プログラムのオブジェクト指向への移行方法
JPH09190355A (ja) プログラム変換方法
JPH02136929A (ja) オブジェクトプログラムの命令文削減方式
JPH01295332A (ja) プログラム配置方式
JPH01145730A (ja) データ行先き制御方式
JPS63313236A (ja) プログラム言語自動変換装置
JPH0390931A (ja) Rom化プログラムの生成方法
JP3570870B2 (ja) システム構築装置、システム構築方法及びシステム構築プログラムを記録した媒体
JP3237591B2 (ja) コンパイル装置、コンパイル方法およびコンパイラを記録した記録媒体
JPH0685151B2 (ja) コンパイル処理方式
JPH01280833A (ja) 共通ブロック割り付け方式
JPH0991151A (ja) コンパイル装置及びプロセッサ装置
JP2001092644A (ja) ソフトウェア管理情報の管理方法
JPS63285647A (ja) 出力フアイル名の作成方式
JPS63155338A (ja) プログラム実行履歴記録制御方式
JPS6327938A (ja) 仮想記憶割当て方式
JPH10283194A (ja) プログラム結合編集方法及びプログラム結合編集プログラムを記録した機械読み取り可能な記録媒体
JPH01166134A (ja) クロスリファレンスリスト出力方式
JPH03229327A (ja) 計算機プログラム実行方式
JPH02130637A (ja) ソースコード翻訳方式