JPH0474227A - 機械語コードの最適化方式 - Google Patents

機械語コードの最適化方式

Info

Publication number
JPH0474227A
JPH0474227A JP18858290A JP18858290A JPH0474227A JP H0474227 A JPH0474227 A JP H0474227A JP 18858290 A JP18858290 A JP 18858290A JP 18858290 A JP18858290 A JP 18858290A JP H0474227 A JPH0474227 A JP H0474227A
Authority
JP
Japan
Prior art keywords
external data
segment base
machine language
language code
segment
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
JP18858290A
Other languages
English (en)
Inventor
Chieko Sakuma
佐久間 千恵子
Masuhide Watanabe
渡邊 益秀
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
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators 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 NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP18858290A priority Critical patent/JPH0474227A/ja
Publication of JPH0474227A publication Critical patent/JPH0474227A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はセグメント機構を有するコンピュータにおける
言語処理システムでの機械語コードの最適化方式に関し
、特にデータの参照をする機械語コードでのセグメント
ベース設定の最適化に関する。
〔従来の技術〕
従来、この種の機械語コードの最適化方式は、コンパイ
ラで同じコンパイル処理単位内に含まれるモジュール内
で定義されているデータを同じセグメントにマツピング
されるように一つのセクションにまとめ、それらのデー
タを連続的に参照する機械語コードの生成では最初のデ
ータ参照の機械語コードの生成時にはセグメントベース
の設定を行う機械語コードを付加し、次からのデータ参
照の機械語コード生成時にはセグメントベースの設定を
行う機械語コードは付加しないといっな最適化方式とな
っていた。
〔発明が解決しようとする課題〕
上述した従来の機械語コードの最適化方式は、同じセグ
メントにマツピングされる同じコンパイル処理単位内に
含まれるモジュール内で定義されているデータを参照す
る場合にセグメントベースの設定が最適化されるので、
どのセグメントにマツピングされるかが分からない異な
るコンパイル処理単位内に含まれるモジュール内で定義
されているデータを参照している機械語コードの生成に
は必ずセグメントベースの設定を行う機械語コードを付
加しなければならないという欠点がある。
〔課題を解決するための手段〕
本発明の機械語コードの最適化方式は、異なるコンパイ
ル処理単位内に含まれるモジュール内で定義されている
データを参照するソースモジュールを入力したときに、
セグメントベースの退避をする機械語コードと、外部デ
ータのセグメントベースを設定する機械語コードと、退
避したセグメントベースを復帰する機械語コードとを含
む外部データ参照テキストレコードを有するオブジェク
トモジュールを出力するコンパイラと、前記オブジェク
トモジュールを入力し前記外部データ参照テキストレコ
ードからセグメントベースの退避をする機械語コードと
、外部データのセグメントベースを設定する機械語コー
ドと、退避したセグメントベースを復帰する機械語コー
ドとを無効にしてロードモジュールに出力するリンケー
ジエディタとを具備するようにして実現される。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例の構成図、第2図は第1図に
おいて外部データの参照をする機械語コードでのセグメ
ントベース設定の最適化を具体例で示した説明図である
第1図において、1は外部データ参照を含むソースモジ
ュール、2はソースモジュール1を入力し外部データ参
照について外部データ参照テキストレコードを生成しオ
ブジェクトモジュールに出力するコンパイラ、3はコン
パイラ2から出力されるオブジェクトモジュール、4は
テキストレコードの種別を表す識別IDと、現在のセグ
メントベースを退避する機械語コード格納域と、外部デ
ータのセグメントベースを設定する機械語コード格納域
と、外部データの参照をする機械語コード格納域と、退
避したセグメントベースを復帰する機械語コード格納域
と、外部データのアドレスを解決するためのアドレス解
決情報格納域からなる外部データ参照テキストレコード
、5はオブジェクトモジュール3を入力し外部データ参
照テキストレコード4を読み込んだときに出力するロー
ドモジュール6に生成されるデータセグメントの個数を
調べ、データセグメントが1つの場合に外部データ参照
テキストレコード4からセグメントベースの退避をする
機械語コードと、外部データのセグメントベースを設定
する機械語コードと 退避したセグメントベースを復帰
する機械語コードとを無効にしてロードモジュール6へ
出力するリンケージエディタ、6はリンケージエディタ
5が出力するロードモジュールて゛ある。
次に、第2図を参照して外部データの参照をする機械語
コードてのセグメントベース設定の最適化の方法を説明
する。外部データXの参照があるソースモジュール1を
コンパイラ2に入力すると、コンパイラ2は外部データ
Xの参照について、現在のセグメンI・ベースを退避す
る命令「PU S HD S Jの機械語コードと、外
部データのセグメントベースを設定する命令r MOV
AX、SEG  XJとrMOV  DS、AXjの機
械語コードと2外部データXの参照をする命令rMOV
  AX、XJの機械語コードと、退避したセフメン1
〜ベースを復帰する命令rpopDSJの機械語コード
とを生成し、外部データ参照テキストレコード4に格納
した後、オブジェクトモジュール3へ出力する。
リンケージエディタ4はコンパイラ3の出力したオブジ
ェクトモジュール3を入力し、外部データ参照テキスト
レコード4を読み込んだときにデータセグメントが幾つ
生成されるかを調べ、生成されるデータセグメントが1
つの場合に外部データ参照テキストレコード4からロー
ドモジュール6へ機械語コードを出力する際に、セグメ
ントベースの退避をする機械語コードと、外部データの
セグメントベースを設定する機械語コードと、退避した
セグメントベースを復帰する機械語コードとを無効命令
rNOPJの機械語コードに置き換えてセグメントベー
スの設定の処理が行われないように最適化をし、ロード
モジュール6を作成する。
〔発明の効果〕
以上に説明したように本発明は、異なるコンパイル処理
単位内に含まれるモジュール内で定義されている外部デ
ータを参照している機械語コードについてもセグメント
ベース設定の最適化を行うことにより、データ参照時の
セグメントベース設定の設定回数を減らし、生成したロ
ードモジュールの実行処理速度を向上させることができ
る効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の精成図、第2図は第1図に
おいて外部データの参照をする機械語コードでのセグメ
ントベース設定の最適化を具体例で示す説明図である。 1・・・ソースモジュール、2・・・コンパイラ、3・
・・オブジェクトモジュール、4・・・外部データ参照
テキストレコード、5・・・リンケージエディタ、6・
・・ロードモジュール。

Claims (1)

    【特許請求の範囲】
  1. 異なるコンパイル処理単位内に含まれるモジュール内で
    定義されているデータを参照するソースモジュールを入
    力したときに、セグメントベースの退避をする機械語コ
    ードと、外部データのセグメントベースを設定する機械
    語コードと、退避したセグメントベースを復帰する機械
    語コードとを含む外部データ参照テキストレコードを有
    するオブジェクトモジュールを出力するコンパイラと、
    前記オブジェクトモジュールを入力し前記外部データ参
    照テキストレコードからセグメントベースの退避をする
    機械語コードと、外部データのセグメントベースを設定
    する機械語コードと、退避したセグメントベースを復帰
    する機械語コードとを無効にしてロードモジュールに出
    力するリンケージエディタとを具備することを特徴とす
    る機械語コードの最適化方式。
JP18858290A 1990-07-17 1990-07-17 機械語コードの最適化方式 Pending JPH0474227A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18858290A JPH0474227A (ja) 1990-07-17 1990-07-17 機械語コードの最適化方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18858290A JPH0474227A (ja) 1990-07-17 1990-07-17 機械語コードの最適化方式

Publications (1)

Publication Number Publication Date
JPH0474227A true JPH0474227A (ja) 1992-03-09

Family

ID=16226199

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18858290A Pending JPH0474227A (ja) 1990-07-17 1990-07-17 機械語コードの最適化方式

Country Status (1)

Country Link
JP (1) JPH0474227A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8833612B2 (en) 2009-11-19 2014-09-16 Kao Corporation Fixed quantity discharge squeeze container

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8833612B2 (en) 2009-11-19 2014-09-16 Kao Corporation Fixed quantity discharge squeeze container

Similar Documents

Publication Publication Date Title
EP0213843B1 (en) Digital processor control
US4823257A (en) Information processing system having smart memories
JP3220714B2 (ja) データramを用いたマイクロコントローラ用の強制ページゼロページング方法
ATE191801T1 (de) Speicherauswahl enthaltendes verarbeitungs-system und verfahren
CN110221825B (zh) 一种在计算机上实现母语编程的方法
JPH0474227A (ja) 機械語コードの最適化方式
CN85107899A (zh) 信息处理装置
JP3033091B2 (ja) ディジタル回路データから論理シミュレーション記述言語への自動翻訳方法
KR960016401B1 (ko) 레지스터 페이지 포인터를 이용한 레지스터 페이지간의 페이지 선택회로
JPH0650481B2 (ja) データ処理装置
TW490635B (en) Method and device executing orders with symbolic reference
JPH0812637B2 (ja) アドレス変換方式
CN117193782A (zh) 一种从simscript语言到c语言的语法映射方法和装置
Brown SUPERMAC—a macro facility that can be added to existing compilers
JPS6160151A (ja) タグ付計算機
CN118429177A (zh) 共享内存访问方法、单元、图形处理器及通用图形处理器
JPH04142640A (ja) アドレス変換装置
JPH0792754B2 (ja) アセンブル装置
JPH0358135A (ja) 複数のオペランドを修飾するテキストの出力方法
JPS59225449A (ja) 文番号変換方式
JPH01108639A (ja) アドレス変換方式
JPH0546480A (ja) メモリアクセス方式
JPS63228236A (ja) シンボルアドレス出力方式
KR960704269A (ko) 어드레스가능한 메모리 스페이스의 선형 확장을 제공하는 프로세서 코어(processor core which provides a linear extenstion of an addressable memory space)
JPH04287130A (ja) ベースアドレス方式マシンでの分岐命令最適化方式