JPH03296820A - Method and device for assembly processing - Google Patents
Method and device for assembly processingInfo
- Publication number
- JPH03296820A JPH03296820A JP2100022A JP10002290A JPH03296820A JP H03296820 A JPH03296820 A JP H03296820A JP 2100022 A JP2100022 A JP 2100022A JP 10002290 A JP10002290 A JP 10002290A JP H03296820 A JPH03296820 A JP H03296820A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- program
- company
- assembly
- processing
- 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
Links
- 238000000034 method Methods 0.000 title description 4
- 238000003672 processing method Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 235000020004 porter Nutrition 0.000 description 1
- 102000012498 secondary active transmembrane transporter activity proteins Human genes 0.000 description 1
- 108040003878 secondary active transmembrane transporter activity proteins Proteins 0.000 description 1
- 230000037351 starvation Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
Description
【発明の詳細な説明】
産業上の利用分野
本発明は計算機プログラム開発におけるアセンブル処理
方法及び装置に関するものであム従来の技術
近鍛 ソフトウェアの開発規模が増大し その開発コス
トも飛躍的に増加していも そのためプログラムの再開
発を防止する目的で各種マイクロプロセッサ間でプログ
ラムの互換性を確保することが求められていも プログ
ラムの互換性を確保する方法は幾つか有り、 1つは高
級言語によるプログラム記述であム 他はプロセッサア
ーキテクチャの統一があ翫 後者の例に標準仕様を定め
各社その仕様のサブセット又はフルセットを実現するC
PUチップを開発方法かあも しかし この開発方法で
ζ戴 各社のCPUチップが想定しているオペレーティ
ングシステム(以下O8という)の違いやハードウェア
の都合上から実現されない命令が発生すム そのた八
標準仕様準拠の各社のプロセッサであっても詳細部分で
は互換がとれない部分が存在すム この部分はO8等の
ハードウェアの詳細に関係するシステムプログラムでは
特にその互換性に大きな影響を与え4 0Sの上で動作
するアプリケーションプログラムはこれらのバー ドウ
エアの詳細に係わる命令を使用することはないので大多
数のプログラムについては互換性が確保される。;7か
し 各プロセッサ間でO5などのシステムプログラムを
流通させようとするとき問題が生じも これではプログ
ラムの互換性を確保するために標準仕様を定めたにも関
わらず互換性が維持できない状況が存在することになん
このJ:うな背景のもとて従来のアセンブル処理を図2
を参照(7て説明すも 回虫 10はアセンブリ言語で
記述されたソースプログラムファイルで、11はアセン
ブル処理部で、12はオブジェクトプログラムファイル
であ4 アセンブル処理部11はソースプログラムファ
イル10を入力とし アセンブリ言語を機械語命令に変
換しオブジェクトプログラムファイル12に出力ずム
そのとぎ、アセンブル対象となる命令は対象プロセッサ
がもつ命令のみを扱うので標準仕様であっても対象プロ
セッサが持っていない命令はエラーとして処理されも発
明が解決しようとする課題
従来のアセンブラ処理方法及び装置においては前述の具
体例で説明したように A社の標準仕様準拠チップ用の
アセンブラで作成されたプログラムを別のB社の標準仕
様準拠チップ用のアセンブラに処理させた場へ この
プログラムの中にA社のチップには存在するがB社のチ
ップでは存在しない命令が含まれたとき、B社のアセン
ブラで処理;7たとき、エラーを発生ずム エラーが発
生し。[Detailed Description of the Invention] Industrial Application Field The present invention relates to an assembly processing method and apparatus for computer program development. Therefore, there is a need to ensure program compatibility between various microprocessors in order to prevent program redevelopment, but there are several ways to ensure program compatibility. One is programming in a high-level language. In the latter case, standard specifications are set and each company implements a subset or full set of the specifications.
However, this development method may generate instructions that cannot be realized due to differences in the operating system (hereinafter referred to as O8) assumed by each company's CPU chip or due to hardware reasons.
Even if processors from various companies comply with the standard specifications, there are parts that are not compatible with each other in detail.This part has a large impact on compatibility, especially in system programs related to the details of hardware such as O8. Since application programs running on the software do not use instructions related to the details of these hardware, compatibility is ensured for the majority of programs. ;7 However, problems may arise when trying to distribute system programs such as O5 between processors.In this case, even though standard specifications have been established to ensure program compatibility, compatibility cannot be maintained. Figure 2 shows the conventional assembly process in the background.
Refer to 7 (explained in 7). 10 is a source program file written in assembly language, 11 is an assembler, and 12 is an object program file. Converts the language into machine language instructions and outputs them to the object program file 12
Then, since only the instructions that the target processor has are handled as the instructions to be assembled, even if the instructions are standard specifications, instructions that the target processor does not have are treated as errors. Problems to be solved by the invention Conventional assembler processing methods and In the equipment, as explained in the specific example above, a program created with an assembler for company A's standard specification compliant chip is processed by another assembler for company B's standard specification compliant chip. When the code contains an instruction that exists in company A's chip but does not exist in company B's chip, it is processed by company B's assembler;
た箇所はB社のチ・ツブが持つ命令に修正(7なげれば
ならなし犯シ、かl−チップによってはインプリメント
を行っていない命令であってもソフトウェアで模擬実行
する機能を持つために アセンブラ処理ではエラーとな
るがプログラムは正常に動作する場合が有る。この場合
はプログラムを修正する必要がな(−このように その
エラー発生時の対策もチップ間の命令の違いによって一
様ではな(へ そのため複数チップ間でプログラムを移
植しようとする移植者にとっては非常に手間がかかるこ
とになりプログラムの流通性が更に損なわれるという事
態が生じも 本発明(社 標準仕様に準拠しているチッ
プ間でプログラムの移植を行うとき、従来のアセンブラ
処理方法及び装置が有していた前記問題点に鑑へ プロ
グラムを他のチップ用のアセンブラで処理すると畝 移
植の為のプログラムの修正等の対処を容易にするための
ものであもその標準仕様に定められている機械語命令に
ついて、各チップが持つ/持だない或はソフトウェアで
模擬する/しないなどチップ毎の対応状況を定義できる
アセンブラ処理方法及び装置を提供することを目的とす
ム
課題を解決するための手段
本発明(友 前記の目的を達成するために アセンブリ
言語で書かれたプログラムを翻訳(−機械語を生成する
アセンブル処理部と、アセンブル処理部がアセンブル処
理時に参照する機械語命令毎のインプリメント状況を記
述した命令インプリメントデータ部とを備えたことを特
徴とするアセンブル処理装置を構成する。The part that was written was modified to the instruction that Company B's chip has (7. There are cases where an error occurs in assembler processing, but the program operates normally. In this case, there is no need to modify the program. (H) As a result, it is very time-consuming for porters who want to port a program between multiple chips, and the distribution of the program is further impaired. When porting a program between chips, take into account the problems mentioned above with conventional assembler processing methods and equipment. An assembler processing method that can define the compatibility status of each chip, such as whether each chip has or does not have it, and whether or not to simulate it with software, regarding the machine language instructions specified in the standard specification, even if it is for the purpose of facilitating the process. To achieve the above object, the present invention aims to provide an apparatus for translating a program written in an assembly language (- an assembly processing unit that generates machine language); and an instruction implementation data section that describes the implementation status of each machine language instruction referred to by the assemble processing section during assembly processing.
作用
本発明のアセンブル処理装置は前記した構成により、ア
センブル処理部が命令インプリメントデータ部の内容を
アセンブル処理を行うときに読み取ることによりソース
プログラム中に含まれる機械語命令に対して各チップに
最適なアセンブラ処理を行うことを可能と【−同時にプ
ログラム移植時に修正しなければならない箇所の発見と
修正に対する示唆を得ることを可能とするものであ本実
施例
以下、本発明のアセンブル処理装置の一実施例を図面を
用いて説明すも 第1図は本発明の一実施例におけるア
センブル処理装置の構成図であム図屯 1はアセンブリ
言語で記述されたソースプログラムファイルで、 2は
ソースプログラムファイA4の内容をオブジェクトプロ
グラムに変換するアセンブル処理部 3はアセンブル処
理部2が処理中に参照し 各命令毎の対象CPUにおけ
るインプリメント状況を定義している命令インプリメン
トデータ服 4はアセンブル処理部2が出力するオブジ
ェクトを格納するオブジェクトプログラムファイルであ
ム 前記のように構成された本実施例のアセンブル処理
装置の動作を以下に説明すも 命令インプリメントデー
タ3には以下のように 標準仕様に定められた各機械語
命令毎のチップでインプリメント状況がコード化されて
記録されていも
1、命令として存在する(存在命令)
2、命令として存在しないがソフトウェアでシミュレー
トされる(模擬実行命令)
3、 この命令は存在しない(未定義命令)ここ六 入
社の標準仕様準拠CPUチップ用のアセンブリ言語で記
述されたプログラムが格納されているソースプログラム
ファイル1をB社の標準仕様準拠CPUチップに移植す
る場合を考えも命令インプリメントデータ部3にはB社
の標準仕様準拠CPUチップの各命令のインプリメント
状況が定義されていも アセンブル処理部2が命令イン
プリメントデータ部3の内容を参照することにより、対
象CPU(B社の標準仕様準拠CPUチップ)の各命令
がどのような状況で実現されているかをあらかじめ認識
することができも このようへ 対象CPUの命令の状
況を知ってソースプログラムファイル1 (A社標準
仕様準拠CPUチップ用プログラム)の内容を以下の用
に処理することにより、移植時のプログラムの修正作業
にかかる工数を著しく削減することが出来ム・存在命令
−正しくオブジェクトに変換すム
・模擬実行命令−正しくオブジェクトに変換すム
・未定義命令 →対象CPUでは命令として実現されて
いない旨をエラーメ
ツセージとして出力し 修正
を促す。Effect: The assemble processing device of the present invention has the above-described configuration, so that the assemble processing section reads the contents of the instruction implementation data section when performing assembling processing, and thereby determines the optimum machine language instructions for each chip for the machine language instructions included in the source program. This makes it possible to perform assembler processing and at the same time to discover parts that need to be corrected when porting a program and to obtain suggestions for correction. An example will be explained with reference to the drawings. Fig. 1 is a block diagram of an assembly processing device in an embodiment of the present invention. 1 is a source program file written in assembly language, 2 is a source program file A4 3 is referenced by the assembler 2 during processing and defines the implementation status of each instruction in the target CPU. 4 is output by the assembler 2 This is an object program file that stores objects.The operation of the assemble processing device of this embodiment configured as described above will be explained below. Even though the implementation status is coded and recorded on the chip for each word instruction, 1. It exists as an instruction (existing instruction). 2. It does not exist as an instruction but is simulated by software (simulated execution instruction). 3. This instruction Does not exist (undefined instruction) Here 6 Consider the case where source program file 1, which stores a program written in assembly language for a company's standard specification compliant CPU chip, is to be ported to a company B's standard specification compliant CPU chip. Even though the instruction implementation data section 3 defines the implementation status of each instruction of the standard specifications compliant CPU chip of company B, the assemble processing section 2 can refer to the contents of the instruction implementation data section 3 to assemble the target CPU (company B's In this way, it is possible to know in advance the situation in which each instruction of the target CPU (standard specification compliant CPU chip) is implemented. By processing the contents of the chip program for the following purposes, it is possible to significantly reduce the number of man-hours required to modify the program during porting. Existence instructions - Correctly convert to objects. Mock execution instructions - Correctly convert. Undefined instruction that is converted to an object -> Outputs an error message indicating that the instruction is not implemented in the target CPU and prompts for correction.
このように 移植対象CPUチップ用の命令インプリメ
ントデータ部3を用意し 移植対象のソフトウェアを本
発明のアセンブル処理装置にてアセンブル処理すること
により、アセンブル処理が行えると同時く 移植に際し
て修正しなければならない箇所が判明するとともにその
対処の方法がある程度指示されることにな& CPU
チップ開発メーカが自社チップ用の命令インプリメント
データ部を作成して、移植を行うプログラマに提供する
ことにより、標準仕様準拠CPUチップ間のソフトウェ
アの流通が促進され 産業発展に多大なる貢献をするこ
とができも
発明の効果
本発明のアセンブル処理方法及びその装置において6表
アセンブル処理部が移植対象CPUの命令の実現状況
を把握できるたム ソフト開発及び移植作業時に不可欠
なアセンブル作業を行う過程で移植に際して修正する必
要のある箇所が判明するばかりかその修正方法について
もある程度の示唆を得ることが出来も このことJ&
プログラムの移植に関わる工数を激減させることが出
来 産業発展に多大なる貢献をすることができムIn this way, by preparing the instruction implementation data part 3 for the CPU chip to be ported and assembling the software to be ported using the assemble processing device of the present invention, the assemble processing can be performed, and at the same time, it must be modified at the time of porting. As soon as the location is identified, you will be given some instructions on how to deal with it & CPU
Chip development manufacturers create instruction implementation data sections for their own chips and provide them to programmers who perform porting, thereby facilitating the distribution of software between standard specification compliant CPU chips and making a significant contribution to industrial development. Effects of the Invention Table 6 In the assembling processing method and apparatus of the present invention, the assembling processing section can grasp the implementation status of instructions of the CPU to be ported. Not only will you be able to identify areas that need to be corrected, but you will also be able to get some suggestions on how to correct them.
The man-hours involved in program porting can be drastically reduced, making it possible to make a significant contribution to industrial development.
第1図は本発明の一実施例のアセンブル処理装置の構成
は 第2図は従来のアセンブル処理装置の構成図であム
ト・・・アセンブリ言語で記述されたソースプログラム
ファイ/k 2・・・・アセンブル処理区 3・・・
・命令インプリメントデータ餓 4・・・・オブジェク
トプログラムファイノ塊FIG. 1 shows the configuration of an assemble processing device according to an embodiment of the present invention. FIG. 2 shows the configuration of a conventional assemble processing device.・Assemble processing area 3...
・Instruction implementation data starvation 4...object program fine block
Claims (2)
機械語オブジェクトを生成するアセンブル処理ステップ
と、前記アセンブル処理ステップがアセンブル処理時に
参照する機械語命令毎のインプリメント属性を記述した
命令インプリメントデータから構成されるアセンブル処
理方法。(1) Translate a program written in assembly language,
An assembling processing method comprising an assembling processing step for generating a machine language object, and instruction implementation data that describes implementation attributes for each machine language instruction referenced by the assembling processing step during assembling processing.
機械語オブジェクトを生成するアセンブル処理部と、前
記アセンブル処理部がアセンブル処理時に参照する機械
語命令毎のインプリメント属性を記述した命令インプリ
メントデータ部から構成されるアセンブル処理装置。(2) Translate a program written in assembly language,
An assemble processing device comprising an assemble processing section that generates a machine language object, and an instruction implementation data section that describes implementation attributes for each machine language instruction that the assemble processing section refers to during assembly processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2100022A JPH03296820A (en) | 1990-04-16 | 1990-04-16 | Method and device for assembly processing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2100022A JPH03296820A (en) | 1990-04-16 | 1990-04-16 | Method and device for assembly processing |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03296820A true JPH03296820A (en) | 1991-12-27 |
Family
ID=14262923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2100022A Pending JPH03296820A (en) | 1990-04-16 | 1990-04-16 | Method and device for assembly processing |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03296820A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5158625A (en) * | 1990-04-04 | 1992-10-27 | L'air Liquide, Societe Anonyme Pour L'etude Et L'exploitation Des Procedes Georges Claude | Process and apparatus for heat treating articles while hardening in gaseous medium |
-
1990
- 1990-04-16 JP JP2100022A patent/JPH03296820A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5158625A (en) * | 1990-04-04 | 1992-10-27 | L'air Liquide, Societe Anonyme Pour L'etude Et L'exploitation Des Procedes Georges Claude | Process and apparatus for heat treating articles while hardening in gaseous medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060212861A1 (en) | Typed intermediate representation for object-oriented languages | |
JPH09259153A (en) | Device and method for generating batch execution control program | |
JP2001184218A (en) | Optimization method in compile of mpi program | |
JPH03296820A (en) | Method and device for assembly processing | |
US20110167417A1 (en) | Programming system in multi-core, and method and program of the same | |
GB2420638A (en) | Method of substituting code fragments in Internal Representation | |
JP2009515243A (en) | Method for generating a simulation program executable on a host computer | |
JPH0391039A (en) | Program for test for software and method for preparing test data | |
Alberda et al. | Using formal methods to cultivate trust in smart card operating systems | |
JPH02205930A (en) | Interface check processing method | |
JPH04107741A (en) | Draw-out system for service procedure in rpc | |
JP2001256075A (en) | Developing system and developing method and recording medium | |
Vojtko et al. | Semi-automated process of adaptation of platform dependent parts of embedded operating systems | |
JP2786689B2 (en) | Compiler processing method | |
JPH03244032A (en) | Bit conversion system per word | |
JPH1083328A (en) | Pseudo input/output realizing system for single body test | |
JPH04343140A (en) | Parallelized processing system | |
JPH04320535A (en) | Program forming device | |
JPH0279127A (en) | Fortran compile processing system | |
JPH0250730A (en) | Language converting system based upon common machine word | |
JPS6220007A (en) | Instruction adding system for numerical controller | |
JPH04324525A (en) | Program transplantation supporting device | |
Seim | Assembling microprocessor software with minicomputers.[Definition of instruction sets with macros] | |
JPH01137336A (en) | System for checking external procedure interface | |
JPH0328932A (en) | Compiling system for extended language specifications |