JP2002532804A - ハイブリッドコンピュータプログラミング環境 - Google Patents

ハイブリッドコンピュータプログラミング環境

Info

Publication number
JP2002532804A
JP2002532804A JP2000588679A JP2000588679A JP2002532804A JP 2002532804 A JP2002532804 A JP 2002532804A JP 2000588679 A JP2000588679 A JP 2000588679A JP 2000588679 A JP2000588679 A JP 2000588679A JP 2002532804 A JP2002532804 A JP 2002532804A
Authority
JP
Japan
Prior art keywords
level
instructions
source code
assembly language
programming
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
JP2000588679A
Other languages
English (en)
Inventor
シェンデロヴィッチ ゲオルギー
Original Assignee
インフィネオン テクノロジース アクチエンゲゼルシャフト
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 インフィネオン テクノロジース アクチエンゲゼルシャフト filed Critical インフィネオン テクノロジース アクチエンゲゼルシャフト
Publication of JP2002532804A publication Critical patent/JP2002532804A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/423Preprocessors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 高性能なハイブリッドプログラミング環境を供給することによりアセンブリ言語プログラミングを補助する装置を提供する。この装置は、少なくとも1個の高級命令を含む入力ハイブリッドソースコードファイルをパースするモジュールと、ハイブリッドソースコードファイル内の少なくとも1個のアセンブリ言語命令を、対応する高級命令から定義する関数のライブラリと;ライブラリに従って高級命令を機械語命令に翻訳するモジュールと;翻訳された機械語命令をオブジェクトファイルに出力するためのモジュールを具備する。

Description

【発明の詳細な説明】
【0001】 発明の背景 本発明は、コンピュータプログラミング言語環境に関し、より詳細にはアセン
ブリ言語プログラムの作成及びデバッギングを補助するための装置に関する。
【0002】 アセンブリ言語プログラミングは、プログラミングプロセスのコード作成及び
デバッギング段階の両方において特に困難な作業である。C++等の高級言語を使
用して、人間の使用する言語に比較的近い抽象的記号でアルゴリズムを既述する
プログラムを書くことができる。他方、アセンブリ言語は機械的であり、アルゴ
リズムを単純なマイクロプロセッサ命令で既述する。従って、アセンブリ言語プ
ログラムは通常、高級言語により書かれたプログラムよりも長く、理解が難しい
【0003】 デバッギングプロセスはアセンブリ言語プログラミングにおいて特に困難であ
る。デバッギングとは、コンピュータプログラムを試験して、設計仕様に一致し
ないような結果を生じさせるプログラムエラー(バグ)を見つけだす作業である
。エラーはプログラムの土台として使用される基本的アルゴリズム内の欠陥や、
アルゴリズムの間違った実行等から生ずる。そのようなエラーを有する結果を発
見すると、ソフトウェアエンジニアはエラーを含むコンピュータプログラム部分
を見つけだし、書き換える。エンジニアは次にプログラムを再コンパイルし、も
う一度試験する。このデバッギングプロセスは、プログラムからエラーが除去さ
れるまで繰り返される。
【0004】 デバッギングプロセスがアセンブリ言語プログラムに対して比較的困難である
理由は、基本的アルゴリズムが、多数の機械的かつ個々のマイクロプロセッサに
特有の命令により不明瞭となるからである。他方、高級言語では基本的アルゴリ
ズムは認識が容易である。また、現在のアセンブリ言語プログラミング環境では
、高級プログラミング環境において一般に見られる多くの機能が利用できない。
例えば、高級言語及びプログラミング環境は、ハードディスク上に記憶されたフ
ァイルの取り扱いを容易にする数多くの機能を有する。これらのファイルは、プ
ログラムのデバッグ中にそこから得られる試験出力結果を記憶するために使用で
きる。
【0005】 アセンブリ言語におけるデバッギングプロセスにおける別の問題点は、個々の
アセンブリ言語がそれぞれ特有のデバッギングプログラムを有しているため、ソ
フトウェアエンジニアは新しいマイクロプロセッサが開発される度に、新たな一
連のデバッギングプログラムに習熟しなければならない点である。
【0006】 アセンブリ言語プログラムの実行を試験するための最も正確な手段、すなわち
エミュレータは、アセンブリ言語が使用されるマイクロプロセッサに直接接続さ
れる特別なハードウェア装置である。エミュレータはマイクロプロセッサの入力
と出力の状態を継続して監視する。そのような装置は高価であり、マイクロプロ
セッサ開発の初期段階では必ずしも利用出来るものではなく、従ってソフトウェ
ア開発における遅れの原因ともなる。
【0007】 欧州特許出願第90114711号には、高級言語で書かれた制御プログラム
を機械言語に翻訳し、その機械語制御プログラムを、開発マイクロプロセッサに
転送するために使用される特化された開発用コンピュータが記載されている。こ
れによって開発プロセスは幾分容易となるが、1つのプログラム内に高級言語と
アセンブリ言語の両方を含んだプログラムの作成、試験及びデバッギングを可能
とするものではない。さらに、この開発方法では、特化ハードウェア及びインタ
フェース用の別個の開発用コンピュータが必要とされる。
【0008】 より効率的な装置では必要とされる特別な電子的ハードウェアの量が低減され
る。そのような装置は汎用パーソナルコンピュータ上で使用されるため、企業は
社員の既存のパーソナルコンピュータ技術を利用して、アセンブリ言語プログラ
ムの作成及びデバッギングを行うことができる。さらに効率の高い装置では、競
争の激しい高級プログラム言語市場に出回っている全てのツールを、アセンブリ
言語プログラミングに利用することができる。
【0009】 従って、高級言語プログラムの作成およびデバッギングの容易さをアセンブリ
言語プログラムに適応可能とする装置が必要とされている。
【0010】 発明の要約 本発明の課題は、アセンブリ言語プログラムの作成及びデバッギングを容易に
する、高度なアセンブリ言語プログラミング環境を提供することである。この課
題は、高級プログラミング言語命令とアセンブリ言語プログラミング命令の両方
を含むプログラムをコンパイルできる、ハイブリッドプログラミング環境により
達成される。
【0011】 本発明は、高度なハイブリッドプログラミング環境を提供することによりアセ
ンブリ言語プログラミングを容易にするシステムを提供する。この環境、少なく
とも1つの高級命令を含む入力ハイブリッドソースコードファイルをパースする
モジュール;ハイブリッドソースコードファイル内の少なくとも1個のアセンブ
リ言語命令を対応する高級命令から定義するための関数のライブラリ;高級命令
を前記ライブラリに従って機械言語命令に翻訳するためのモジュール;及び、翻
訳された機械言語命令をオブジェクトファイルに出力するモジュールを有する。
【0012】 本発明はまた、不特定数の高級及びアセンブリ言語命令を含むハイブリッドソ
ースコードファイルを取り扱うための方法を提供する。この方法では:少なくと
も1個の高級命令を含む入力ハイブリッドソースコードファイルをパースし;ハ
イブリッドソースコードファイル内のアセンブリ言語命令を高級言語命令に変換
し;高級命令を機械語命令に翻訳し;翻訳された機械語命令をオブジェクトファ
イルにコンパイルする。
【0013】 本発明はまた、アセンブリ言語プログラムを作成及びデバッギングするための
方法を提供する。この方法では:少なくとも1個の高級命令を含むソースコード
ファイルを作成し;少なくとも1個の高級命令を含むソースコードファイルをデ
バッギングし;ソースコードファイル内の高級命令をアセンブリ言語命令に置換
し;その結果得られる、高級及びアセンブリ言語命令の両方を含むハイブリッド
ソースコードファイルをデバッグする。
【0014】 図面の簡単な説明 以下の本発明の説明において図面を参照する。
【0015】 図1は、本発明のアセンブリ言語プログラミングプロセスにおける各ステップ
を示すブロック図である。
【0016】 発明の簡単な説明 本発明によれば、プログラマーは先ず、高級コンパイラ及びプログラミング環
境を使用して、高級言語で書かれたプログラムをコンパイル及びデバッグする。
プログラマーは高級プログラムコードを、生ずる高級コードに満足がゆくまでデ
バッグする。次にプログラマーは少しずつ高級命令をアセンブリ言語命令に換え
ていき、全ての高級命令がアセンブリ言語命令に置き換えられるまで結果をデバ
ッグする。
【0017】 本発明のハイブリッドプログラミング環境は、アセンブリ言語命令をエミュレ
ートする関数のライブラリを具備した高級言語コンパイラである。これらの関数
はコンパイラの標準コンパイラ言語命令のグループとして書かれており、従って
標準的な高級言語命令と一緒に使用することができる。本発明により提供される
特別ライブラリ内の関数はアセンブリ言語命令の動作を模倣する。コンパイラは
このライブラリを、必要に応じてその他のライブラリと共に利用可能であり、そ
の際、該ライブラリはコンパイラによって認識されるライブラリのリストに加え
られ、特別なハードウェアを要しない。
【0018】 コンピュータプログラマーは、高級プログラミング言語命令で書かれたプログ
ラムをコンピュータファイルに入れることにより、プログラミングプロセスを開
始する。このファイルはソースコードと呼ばれる。プログラマーは次に、標準的
な高級プログラミング言語を使用してソースコードをコンパイルする。エラーを
修正した後、プログラマーはソースコードを再びコンパイルする。このプロセス
は、コンパイルされたファイルが作成されるまで繰り返される。
【0019】 プログラマーは次に、コンパイルされたファイルを、標準的なリンカーを使用
してリンクし、実行可能プログラムを作成する。プログラマーはこのプログラム
を試験し、設計仕様との対応を検査する。プログラマーは設計仕様からのずれが
あれば、ソースコードを修正し、その後コンパイル及びリンキングステップを繰
り返す。プログラマーはこのプロセスを、ソースコードが設計仕様を正確に実行
すると確信が得られるまで繰り返す。
【0020】 プログラマーは次に、高級命令の一部をアセンブリ言語命令に置き換え、高級
及びアセンブリ言語命令の両方を含むハイブリッドソースコードを作成する。プ
ログラマーはハイブリッドソースコードを、前記特別な関数ライブラリを使用し
てコンパイル及びリンキングする。この特別な関数のライブラリを利用すること
によって、コンパイラはアセンブリ言語命令を高級命令と一緒にコンパイルする
ことができる。生じた実行可能プログラムを試験した後、プログラマーはハイブ
リッドソースコードに導入されたアセンブリ言語命令に対して必要な修正を行い
、コンパイル及びリンキングステップを繰り返す。
【0021】 このようにして、プログラマーは序々に全ての高級命令をアセンブリ言語命令
に置き換える。
【0022】 プロセスの最後のステップでは、プログラマーは、所望のマイクロプロセッサ
のための標準的なアセンブラを使用して、アセンブリ言語プログラムをアセンブ
ル及びデバッグする。
【0023】 好適な実施例の説明 本発明はハイブリッドプログラミング環境であり、それによってプログラマー
は高級及びアセンブリ言語命令の両方を含むプログラムを書くことができる。
【0024】 本発明によるハイブリッドプログラミング環境の原理及び動作は、図面と以下
の説明を参照することによりより良く理解されるであろう。
【0025】 図1には、ハイブリッド高級及びアセンブリ言語プログラミングプロセスにお
て使用される本発明が示されている。
【0026】 ブロック10〜40は公知技術を示す。それらは通常の高級コンピュータ言語
プログラミングプロセスであり、プログラマーは高級ソースコードプログラムを
書き、通常の高級言語コンパイラ及びプログラミング環境を使用してソースコー
ドをコンパイル及びデバッグし、デバッグされた高級ソースコードプログラムを
作成する。
【0027】 ブロック10はプログラマーにより高級プログラミング言語(C又はC++等)
において書かれた、所望のプログラムの基本的アルゴリズムを実施するためのプ
ログラムである。このプログラムはソースコードと呼ばれる。
【0028】 ブロック20はブロック10の高級ソースコードプログラムをコンパイル及び
デバッグするためにプログラマーが使用するコンパイラ及びプログラミング環境
である。これは、標準的なコンパイラ及びプログラミング環境であっても、本発
明により提供されるコンパイラ及びプログラミング環境であっても良い。いずれ
にしろ、コンパイラ及びプログラミング環境は、ソフトウェア開発に使用される
標準的なパーソナルコンピュータ上で使用される通常のソフトウェアツールであ
ることができる。
【0029】 コンパイラは業界標準の関数ライブラリと、その他の、プログラマーにより購
入ないし定義された特別なライブラリを含む。例えば、特別なライブラリは、ワ
ードプロセッシングソフトウェアをプログラムするのに便利な関数を含む場合も
ある。そのようなライブラリは、ページ上に文字や単語を様々な向きに表示する
関数や、文書内の単語を検索する関数や、又は文書内の単語のスペリングを修正
する関数を含む。
【0030】 コンパイラはソースコードを一行毎に読み、個々の命令をアセンブリ言語命令
に翻訳するプログラムである。コンパイラは次に、これらのアセンブリ言語命令
を、オブジェクトファイルと呼ばれるファイル内に置く。コンパイラにより作成
されたアセンブリ言語命令は開発パーソナルコンピュータ内のマイクロプロセッ
サに適合させられる。
【0031】 プログラミング環境のその他の部分、特にリンカーは、コンパイラにより作成
されたオブジェクトファイルから実行可能プログラムを作成するために使用され
る。このコンパイリング及びリンキングプロセスの結果が、実行可能プログラム
である。
【0032】 ブロック30は高級デバッギングプロセスを示す。このプロセスでは、ブロッ
ク20のコンパイリングプロセスでコンパイルされた実行可能プログラムが試験
され、その結果が、プログラマーにより意図されたものと比較される。結果がプ
ログラマーの意図したものと合致しない場合、プログラマーはソースコード内の
原因がある高級命令を探してソースコードを修正する。
【0033】 望ましくない結果に対する原因となる高級命令を見つけるために、プログラマ
ーは通常の高級デバッギングツールを使用する。一例として、プログラム内にブ
レークポイントを設定する。これらのポイントにおいて実行が停止され、プログ
ラマーはプログラム内の変数の値を検査することができる。別のツール例として
、変数がプログラマーにより指定された値にセットされるとトリガされるよう、
プログラム実行内にブレークを設定することである。別のデバッギングツールと
して、プログラマーはプログラムを命令毎に実行し、変数の値とプログラム内の
命令の実行の流れの両方を検査するという手段がある。
【0034】 プログラマーは次に、ソースコードを再びコンパイルする。プログラマーはこ
のデバッギングプロセスを、得られるソースコードに満足がゆくまで繰り返す。
【0035】 ブロック40はデバッグされた高級プログラミング言語コード、すなわちブロ
ック30の高級デバッギングプロセスの結果を示す。通常の高級言語プログラミ
ングプロセスはここで終了する。
【0036】 ブロック50において、プログラマーは高級プログラミング言語の命令アセン
ブリ言語命令への置換を開始する。その結果、アセンブリ及び高級言語命令の両
方を含むハイブリッドソースコードファイルが得られる。
【0037】 ブロック60は本発明、すなわち標準的なプログラミング言語コンパイラに関
数ライブラリを具備したものを示す。前記関数ライブラリは、アセンブリ言語命
令を、コンパイラによりコンパイルされる高級プログラミング言語で定義したも
のである。このライブラリにより、コンパイラは、高級言語とアセンブリ言語命
令の両方から構成されるハイブリッドソースコードファイルをコンパイルするこ
とができる。プログラマーはコンパイラを使用して、ブロック50で生じた、高
級及びアセンブリ言語命令の両方を含むハイブリッドプログラムコードから、実
行可能プログラムをコンパイルする。
【0038】 ブロック70は、ブロック50から生じるハイブリッドコードに対するデバッ
ギングプロセスを示す。ブロック20の高級デバッギングプロセスと同様、プロ
グラマーはブロック60のハイブリッドプログラミング環境を使用して作成され
た実行可能プログラムの結果を、プログラマーの意図するものと比較し、ブロッ
ク50のソースコードに適切な修正を加え、ソースコードを再びコンパイルする
。ハイブリッドコードのデバッギングの際、プログラマーは高級プログラミング
環境において利用可能な多数のデバッギングツールを使用する。
【0039】 上記プロセスは、ハイブリッドソースコードから得られた実行可能プログラム
がプログラマーの意図した通りに動作するまで繰り返される。
【0040】 プログラマーは次に、ブロック50のプロセスに戻り、その他の高級プログラ
ミング命令をアセンブリ言語プログラミング命令に置き換え、ブロック60と7
0のプロセスを繰り返す。この繰り返しは、全ての高級コードがアセンブリ言語
コードに置き換えられ、その結果得られるアセンブリ言語命令のみを含むソース
コードファイルのデバッギングが完全に終了するまで行われる。
【0041】 ブロック80はアセンブリ言語アセンブラプログラムを示し、ブロック90は
アセンブリ言語デバッガーを示す。これらのブロックはプロセスの最終的ステッ
プであり、プログラマーはソースコードファイル内のアセンブリ言語プログラム
を、所望のマイクロプロセッサのための標準的なアセンブラ及びデバッギングツ
ールを使用してアセンブル及びデバッグする。
【0042】 上述の説明は単なる例示であり、本発明の精神と範囲内において数多くのその
他の実施例が可能である。
【図面の簡単な説明】
【図1】 本発明におけるアセンブリ言語プログラミングプロセスのステップを示すブロ
ック図である。

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 高度なハイブリッドプログラミング環境を提供することによ
    りアセンブリ言語プログラミングを補助するためのシステムであり、前記環境は
    : (a)少なくとも1個の高級命令を含むソースコードファイルをパースするた
    めのモジュールと; (b)ハイブリッドソースコードファイル内の少なくとも1個のアセンブリ言
    語命令を、対応する高級命令により定義するための関数のライブラリと; (c)高級命令を前記ライブラリに従って機械語命令に翻訳するためのモジュ
    ールと; (d)翻訳された機械語命令をオブジェクトファイルに出力するためのモジュ
    ールを具備したことを特徴とする、アセンブリ言語プログラミングを補助するた
    めのシステム。
  2. 【請求項2】 不特定数の高級及びアセンブリ言語命令を含むハイブリッド
    ソースコードファイルを取り扱うための方法であり、 (a)少なくとも1個の高級命令を含むハイブリッドソースコードファイルを
    パースするステップと; (b)ハイブリッドソースコードファイル内のアセンブリ言語命令を高級言語
    命令に変換するステップと; (c)高級命令を機械語命令に翻訳するステップと; (d)翻訳された機械語命令をオブジェクトファイルにコンパイルするステッ
    プを有した方法。
  3. 【請求項3】 アセンブリ言語プログラムを作成し及びデバッグするための
    方法であり、 (a)複数のアセンブリ言語命令の1つ1つを、複数の高級言語命令の1つ1
    つに従って定義するステップと; (b)前記複数の高級命令のうち少なくとも1個を含むソースコードファイル
    を作成するステップと; (c)前記複数の高級命令のうちの前記少なくとも1個が正しく機能するまで
    、前記ソースコードをデバッグするステップと; (d)ソースコードファイル内の前記複数の高級命令のうちの前記少なくとも
    1個を、少なくとも1個のアセンブリ言語命令で置き換えるステップと; (c)その結果得られる、高級及びアセンブリ言語命令の両方を含んだハイブ
    リッドソースコードファイルをデバッグするステップを具備した方法。
JP2000588679A 1998-12-14 1999-12-14 ハイブリッドコンピュータプログラミング環境 Pending JP2002532804A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/210,542 1998-12-14
US09/210,542 US6314557B1 (en) 1998-12-14 1998-12-14 Hybrid computer programming environment
PCT/EP1999/009929 WO2000036500A2 (en) 1998-12-14 1999-12-14 Hybrid computer programming environment

Publications (1)

Publication Number Publication Date
JP2002532804A true JP2002532804A (ja) 2002-10-02

Family

ID=22783309

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000588679A Pending JP2002532804A (ja) 1998-12-14 1999-12-14 ハイブリッドコンピュータプログラミング環境

Country Status (6)

Country Link
US (1) US6314557B1 (ja)
EP (1) EP1064598A2 (ja)
JP (1) JP2002532804A (ja)
KR (1) KR20010078692A (ja)
CN (1) CN1299482A (ja)
WO (1) WO2000036500A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018169887A (ja) * 2017-03-30 2018-11-01 東芝産業機器システム株式会社 プログラムの製造方法、及びコンピュータシステムのアップデート方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625808B1 (en) * 1999-12-10 2003-09-23 Microsoft Corporation Method and apparatus for facilitating memory management in a program comprised of heterogeneous components
US6668369B1 (en) * 1999-12-29 2003-12-23 International Business Machines Corporation Software debugging tool for displaying dynamically written software code
US6968548B1 (en) * 2000-12-01 2005-11-22 Unisys Corporation Method and apparatus for sharing data structures between assembly language programs and high-level language programs
US20020083421A1 (en) * 2000-12-22 2002-06-27 Hitachi America, Ltd. Assembly language code compilation for an instruction-set architecture containing new instructions using the prior assembler
US7203925B1 (en) * 2001-09-14 2007-04-10 Emc Corporation Graphical compiler
US7216338B2 (en) * 2002-02-20 2007-05-08 Microsoft Corporation Conformance execution of non-deterministic specifications for components
JP2004013190A (ja) * 2002-06-03 2004-01-15 Matsushita Electric Ind Co Ltd ソフトウエア開発環境、シミュレータ及び記録媒体
WO2004036421A2 (en) * 2002-10-21 2004-04-29 Eitan Glotman System and method for a mixed-language compiler
US7237233B2 (en) * 2002-12-19 2007-06-26 Texas Instruments Incorporated Assembly directives for the support of multi-language programming
GB0303270D0 (en) * 2003-02-13 2003-03-19 Renishaw Plc A machine tool control process and apparatus therefor
US20050193378A1 (en) * 2004-03-01 2005-09-01 Breault Richard E. System and method for building an executable program with a low probability of failure on demand
US20070271553A1 (en) * 2006-05-22 2007-11-22 Micro Focus (Us), Inc. Method and system for translating assembler code to a target language
WO2009065168A1 (en) * 2007-11-20 2009-05-28 National Ict Australia Limited Multi language software code analysis
CN105556504A (zh) * 2013-06-24 2016-05-04 惠普发展公司,有限责任合伙企业 从物理流生成逻辑表示
CN113761171A (zh) * 2021-01-26 2021-12-07 北京沃东天骏信息技术有限公司 一种辅助编程方法、装置、电子设备及存储介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0362202A (ja) 1989-07-31 1991-03-18 Japan Electron Control Syst Co Ltd 制御プログラム開発装置
US5132972A (en) * 1989-11-29 1992-07-21 Honeywell Bull Inc. Assembly language programming potential error detection scheme sensing apparent inconsistency with a previous operation
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
US5175856A (en) * 1990-06-11 1992-12-29 Supercomputer Systems Limited Partnership Computer with integrated hierarchical representation (ihr) of program wherein ihr file is available for debugging and optimizing during target execution
US5430862A (en) 1990-06-29 1995-07-04 Bull Hn Information Systems Inc. Emulation of CISC instructions by RISC instructions using two pipelined stages for overlapped CISC decoding and RISC execution
JPH04229337A (ja) 1990-12-27 1992-08-18 Hitachi Ltd エミュレータ
US5261055A (en) 1992-02-19 1993-11-09 Milsys, Ltd. Externally updatable ROM (EUROM)
JP3210466B2 (ja) 1993-02-25 2001-09-17 株式会社リコー Cpuコア、該cpuコアを有するasic、及び該asicを備えたエミュレーションシステム
US5404485A (en) 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
JPH0721033A (ja) * 1993-07-07 1995-01-24 Nec Corp 言語処理装置及びその方法
US5392036A (en) 1993-10-28 1995-02-21 Mitan Software International (1989) Ltd. Efficient optimal data recopression method and apparatus
US5933642A (en) * 1995-04-17 1999-08-03 Ricoh Corporation Compiling system and method for reconfigurable computing
US5740469A (en) * 1995-04-24 1998-04-14 Motorola Inc. Apparatus for dynamically reading/writing multiple object file formats through use of object code readers/writers interfacing with generalized object file format interface and applications programmers' interface
US5860008A (en) * 1996-02-02 1999-01-12 Apple Computer, Inc. Method and apparatus for decompiling a compiled interpretive code
US5805893A (en) * 1996-03-01 1998-09-08 Electronic Data Systems Corporation Assembly language program converter
US5668989A (en) * 1996-09-18 1997-09-16 Mao; Decao Two-digit hybrid radix year numbers for year 2000 and beyond
US6021275A (en) * 1996-08-05 2000-02-01 General Magic, Inc. Object code structure and method for translation of architecture independent program implementations
US6233545B1 (en) * 1997-05-01 2001-05-15 William E. Datig Universal machine translator of arbitrary languages utilizing epistemic moments
US6083278A (en) * 1997-05-28 2000-07-04 Texas Instruments Incorporated System and method for displaying and editing assembly language source codes
JP3424520B2 (ja) * 1997-08-29 2003-07-07 松下電器産業株式会社 プログラム変換装置とデバッグ装置
US6014513A (en) * 1997-12-23 2000-01-11 University Of Washington Discovering code and data in a binary executable program
US6173441B1 (en) * 1998-10-16 2001-01-09 Peter A. Klein Method and system for compiling source code containing natural language instructions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018169887A (ja) * 2017-03-30 2018-11-01 東芝産業機器システム株式会社 プログラムの製造方法、及びコンピュータシステムのアップデート方法

Also Published As

Publication number Publication date
CN1299482A (zh) 2001-06-13
KR20010078692A (ko) 2001-08-21
WO2000036500A2 (en) 2000-06-22
EP1064598A2 (en) 2001-01-03
WO2000036500A3 (en) 2000-11-09
US6314557B1 (en) 2001-11-06

Similar Documents

Publication Publication Date Title
Leroy et al. CompCert-a formally verified optimizing compiler
US8448152B2 (en) High-level language, architecture-independent probe program compiler
US6314557B1 (en) Hybrid computer programming environment
US20030088860A1 (en) Compiler annotation for binary translation tools
JP2006505844A (ja) プログラムコード変換の検証を実行するための方法および装置
US20110126179A1 (en) Method and System for Dynamic Patching Software Using Source Code
Ward et al. Formal methods to aid the evolution of software
JPH0926884A (ja) バイナリ操作を必要とするタスク中に必要なフロー情報を使用可能とする方法および装置
US20150020051A1 (en) Method and apparatus for automated conversion of software applications
KR100532467B1 (ko) 서로 다른 버전에서 생성된 디버깅 정보 파일들을 이용한소스 코드 레벨 디버깅을 제공하는 엠시유 응용프로그램검증 시스템 및 그 방법
Curzon et al. A Verified Compiler for a Structured Assembly Language.
KR0125605B1 (ko) 프로그램의 아키덱쳐 변환방법 및 장치와 그 방법 및 장치를 사용하여 프로그램의 동작을 검증하는 방법 및 장치
Stepney Incremental development of a high integrity compiler: experience from an industrial development
Chang et al. Analysis of low-level code using cooperating decompilers
JP2009515243A (ja) ホストコンピュータ上で実行可能なシミュレーションプログラムを生成する方法
JP2004013190A (ja) ソフトウエア開発環境、シミュレータ及び記録媒体
Usov ptr-tidy: Automatic Rejuvenation of Raw Pointers in C+
JP3368795B2 (ja) コンパイル制御方法、コンパイル装置及び記録媒体
Cok Does your software do what it should?
KARAPATEAS RETARGETING AN ASSEMBLY OPTIMIZER FOR THE MIPS/SCALE ASSEMBLY
Nagle Archaic to modern 1: basic tools & issues
JPS58169637A (ja) コンパイル処理方式
Parragi et al. Instrumentation of C++ programs using automatic source code transformations
ELTE 3in Kutatócsoport Instrumentation of C++ Programs Using Automatic Source Code Transformations
JP2005301415A (ja) コンパイル方式、シミュレータ、エミュレータおよびプログラム開発支援システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050609

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051104