JPH036624A - Processing system for translation list output corresponding to plural code systems - Google Patents

Processing system for translation list output corresponding to plural code systems

Info

Publication number
JPH036624A
JPH036624A JP14082889A JP14082889A JPH036624A JP H036624 A JPH036624 A JP H036624A JP 14082889 A JP14082889 A JP 14082889A JP 14082889 A JP14082889 A JP 14082889A JP H036624 A JPH036624 A JP H036624A
Authority
JP
Japan
Prior art keywords
list
code
code system
compiler
data
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
JP14082889A
Other languages
Japanese (ja)
Inventor
Masahiro Osada
長田 昌弘
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP14082889A priority Critical patent/JPH036624A/en
Publication of JPH036624A publication Critical patent/JPH036624A/en
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

PURPOSE:To improve the executability and at the same time to prevent the increase of the memory resources by attaining a process logic having no con sciousness of code systems and at the same time using only a single piece of internal data. CONSTITUTION:A list output handler 16 has a processing function to convert each character code if necessary for the list data. Therefore, a compiler main body 14 can attain a process logic which has no consciousness of the code system of a text of a source program under translation when a translation list is edited. Furthermore, just a single type of buffer is required for the list data including the proper data. As a result, the executability of a compiler 12 is improved and at the same time the necessary resources of a main storage can be decreased.

Description

【発明の詳細な説明】 (概要〕 異なる複数のコード系の原始プログラムを、それぞれ目
的プログラムに翻訳し、併せて翻訳リストを出力するコ
ンパイラを備えた計算機システムにおける複数コード系
に対応する翻訳リスト出力処理方式に関し コード系を意識する処理論理を簡易化し、メモリ資源の
節減と性能向上を可能にする手段を提供することを目的
とし 出力データの内容と、そのコード系の通知を受け、コー
ド系を調べて、コード系の変換が必要である場合には、
出力データについてコード系を変換してリスト出力する
リスト出力ハンドラと、翻訳リストのコード系を処理論
理で意識せずに、出力データの内容とコード系とを上記
リスト出カッ\ンドラに通知するコンパイラ本体部とを
備えるように構成する。
[Detailed Description of the Invention] (Summary) Translation list output corresponding to multiple code systems in a computer system equipped with a compiler that translates source programs of multiple different code systems into target programs and also outputs a translation list. The purpose is to simplify the processing logic that is aware of the code system regarding the processing method, and to provide a means to save memory resources and improve performance. Check it out and if it is necessary to convert the code system,
A list output handler that converts the code system of output data and outputs it as a list, and a compiler that notifies the above list output handler of the contents and code system of the output data without being aware of the code system of the translated list in the processing logic. The main body is configured to include a main body.

〔産業上の利用分野〕[Industrial application field]

本発明は、異なる複数のコード系の原始プログラムを、
それぞれ目的プログラムに翻訳し、併せて翻訳リストを
出力するコンパイラを備えた計算機システムにおける複
数コード系に対応する翻訳リスト出力処理方式に関する
The present invention enables source programs of a plurality of different code systems to be
The present invention relates to a translation list output processing method that supports multiple code systems in a computer system equipped with a compiler that translates each into a target program and outputs a translation list.

近年の計算機システムの多様化に伴い、多くのシステム
のコンパイラを開発する必要が生じている。また、これ
ら異なるシステム曲でも、同一の仕様のコンパイラが必
要とされている。このためには、あるシステムでコンパ
イラを作成し 他のシステムへ移植すればよいのである
が、これらは同一のコード系とは限らない。したがって
1 できるだけコード系に依存しない処理論理を持つコ
ンパイラを開発する必要がある。
With the diversification of computer systems in recent years, it has become necessary to develop compilers for many systems. Furthermore, compilers with the same specifications are required for these different system songs. To do this, it is possible to create a compiler for one system and port it to another system, but these systems do not necessarily have the same code system. Therefore, 1. It is necessary to develop a compiler with processing logic that is as independent as possible from the code system.

〔従来の技術〕[Conventional technology]

異なるコード系のコンパイラの翻訳リストは原始プログ
ラムと同一のコード系で出力しなければならない。この
翻訳リストには、原始プログラムを表示する部分もある
し、その他、相互参照リストや各種統計リストなど、様
々なものが混在している。
The translation list of a compiler with a different code system must be output using the same code system as the source program. This translation list includes a part that displays the source program, and a variety of other things such as a cross-reference list and various statistics lists.

また、これら各種リストには1例えば各ページの先頭に
印字するへンダや、リストの内容を表示するためのサブ
ヘッダなど、コンパイラ内部のバッファに、あらかじめ
そのデータを固をに持つものもある。
Furthermore, some of these various lists have their data fixed in advance in a buffer inside the compiler, such as a header printed at the beginning of each page or a subheader for displaying the contents of the list.

従来のコンパイラでは、これら固有データをコード系ご
とに持ち、コード系によって、どのバッファの内容をリ
スト出力するかを選択していた。
Conventional compilers have this unique data for each code system, and select which buffer contents to list out depending on the code system.

このようにコンパイラ内部には、同し内容のデータを、
コード系の数だけ持つので、もし新たに別のコード系の
翻訳をサポートすることになった場合には、新たにその
コード系によるデータを追加する必要があった。
In this way, the same data is stored inside the compiler,
Since it has as many codes as there are code systems, if it was decided to support the translation of a new code system, it was necessary to add new data for that code system.

第4図は、従来技術の例を示す図である。FIG. 4 is a diagram showing an example of the prior art.

図中、23は利用者と直接インタフェースをとるコンパ
イラの起動モジュール、24はコンパイラ本体部で、翻
訳処理やリス)[集処理などを行うもの、25A、25
B、・・・は同一内容のリストデータがコード系の数だ
け用意されたリストデータバッファ、26はオペレーテ
ィング・システムと直接のインタフェースを持ち翻訳リ
ストを出力するリスト出力ハンドラ、27はプリンタな
どのリスト出力装置を表す。
In the figure, 23 is the startup module of the compiler that interfaces directly with the user, 24 is the compiler main unit, which performs translation processing, list processing, etc.;
26 is a list output handler that has a direct interface with the operating system and outputs a translation list, 27 is a list of printers, etc. Represents an output device.

起動モジュール23は、これから翻訳しようとする原始
プログラム(図示省略)のコード系をコンパイラ本体部
24に通知する。コンパイラ本体部24におけるリスト
i集処理では、コード系を調べ、どのリストデータバッ
ファ25A、25B、・・・を使ってリスト出力するか
を判断し、またバッファ上の可変データ部も、コード系
に応した文字を埋め込んで、リスト出力ハンドラ26に
出力を依頼する。
The startup module 23 notifies the compiler main unit 24 of the code system of the source program (not shown) to be translated. In the list i collection processing in the compiler main unit 24, the code system is examined and it is determined which list data buffers 25A, 25B, etc. will be used to output the list, and the variable data section on the buffer is also transferred to the code system. embed the corresponding characters, and request the list output handler 26 to output it.

リスト出力ハンドラ26は、指定されたバッファの内容
を、そのままリスト出力装置27にリスト出力する。
The list output handler 26 outputs the contents of the designated buffer as a list to the list output device 27 as is.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

以上のように、従来技術によれば、現在翻訳している原
始プログラム・テキストのコード系をコンパイラ本体部
24における各所の処理論理の中で判断しなければなら
ないので、実行性能が劣化し、またバッファを多く持た
なければならないので、実行時のメモリ資源が多(必要
になるという問題があった。
As described above, according to the prior art, the code system of the source program/text currently being translated must be determined in the processing logic of various parts of the compiler main body 24, resulting in deterioration in execution performance and Since it must have a large number of buffers, there was a problem in that it required a large amount of memory resources during execution.

本発明は上記問題点の解決を図り5翻訳リストのVA*
出力処理において、コード系を意識しない処理論理とし
、同時に内部データをただ1つしか持たないようにする
ことにより、実行性能を向上させ、かつメモリ資源も増
加させないようにすることを目的としている。
The present invention aims to solve the above problems, and the VA* of the 5 translation list
In output processing, the purpose is to improve execution performance and avoid increasing memory resources by using processing logic that is not conscious of the code system and having only one internal data at the same time.

[課題を解決するための手段〕 第1図は本発明の原理説明図である。[Means to solve the problem] FIG. 1 is a diagram explaining the principle of the present invention.

第1図において、10は計算機の高級言語で記述された
原始プログラム、11はCP [Jおよびメモリなどか
らなる処理装置、12はコンパイラ513は利用者と直
接インタフェースをとるコンパイラの起動モジュール、
14はコンパイラ本体部であって、翻訳処理やリスト編
集処理などを行うもの、15はリスト出力のための固有
データなどを持つリストデータバッファ、1Gはオペレ
ーティング・システムと直接のインタフェースを持ちU
8Rリストを出力するリスト出力ハンドラ、17はプリ
ンタや外部記憶装置などのリスト出力装置。
In FIG. 1, 10 is a source program written in a computer high-level language, 11 is a processing unit consisting of a CP [J and memory, etc., 12 is a compiler 513, a compiler startup module that directly interfaces with the user,
14 is a compiler main unit that performs translation processing and list editing processing, 15 is a list data buffer that has unique data for list output, etc., and 1G is a U that has a direct interface with the operating system.
8R A list output handler that outputs a list, 17 a list output device such as a printer or an external storage device.

18はコンパイラ12による原始プログラム10の翻訳
結果である目的プログラムを表す。
Reference numeral 18 represents a target program which is a result of translation of the source program 10 by the compiler 12.

起動モジュール13は、これから翻訳しようとする原始
プログラム10のコード系を、コンパイラ12のビシス
トール時または起動時に利用者が指定したパラメタ、ま
たはその他の方法により判断し、その情報をコンパイラ
本体部14に通知する。
The startup module 13 determines the code system of the source program 10 to be translated based on parameters specified by the user when the compiler 12 is installed or started, or by other methods, and notifies the compiler main unit 14 of this information. do.

コンパイラ本体部14におけるリストW集処理では、コ
ード系を意識せず、あらかじめ決められたコード系のリ
スl−1集処理を行う。リストデータバッファ15には
、コード系の数に関係なく。
In the list W collection processing in the compiler main unit 14, the list L-1 collection of a predetermined code system is processed without being aware of the code system. The list data buffer 15 contains data regardless of the number of code systems.

ある特定のコード系の固有データを含むリストデータが
設定されている。
List data containing unique data for a particular chord system is set.

iis結果の翻訳リストを出力するときには、コンパイ
ラ本体部14は、リスト出力ハンドラ16に対し、リス
トデータバッファ15のアドレスまたは内容とともに、
起動モジュール13から通知されたコード系を通知する
When outputting a translation list of IIS results, the compiler main unit 14 sends the list output handler 16 along with the address or contents of the list data buffer 15.
The code system notified from the startup module 13 is notified.

これに対し、リスト出力ハンドラ16は1通知されたコ
ード系を調べ、そのコード系があらかじめ決められてい
るコード系と一致しているならば。
On the other hand, the list output handler 16 checks the notified code system, and if the code system matches a predetermined code system.

そのままリスト出力装置17にリスト出力し。The list is directly output to the list output device 17.

敗していないならば、出力する内容を、所定の変換テー
ブルなどを利用して1通知されたコード系に変換し、変
換結果をリスト出力する。
If not, convert the content to be output into the notified code system using a predetermined conversion table, etc., and output the conversion results as a list.

〔作用〕[Effect]

本発明では、リスト出力ハンドラ16が、リストデータ
についての個々の文字コードを、必要であれば変換する
処理機能を持つので、コンパイラ本体部14は、翻訳リ
ストの編集にあたって、翻訳している原始プログラム1
0のテキストのコード系を、意識しない処理論理とする
ことができる。
In the present invention, the list output handler 16 has a processing function that converts individual character codes for list data, if necessary, so when editing the translation list, the compiler main unit 14 can edit the source program being translated. 1
The code system of the 0 text can be made into unconscious processing logic.

また、固をデータを含むリストデータのバッファを、1
種類、持つだけでよい。
In addition, the list data buffer containing the fixed data is 1
You just need to have the type.

これにより、コンパイラ12の実行性能の向上が計られ
、同時に、必要となる主記憶資源も少なくて済む。また
、新たに異なるコード系の原始プログラム10を処理対
象とする場合にも、コンパイラ本体部14における処理
論理を変更することなく、容易に対応することができる
This improves the execution performance of the compiler 12, and at the same time requires fewer main memory resources. Furthermore, even when a new source program 10 with a different code system is to be processed, this can be easily handled without changing the processing logic in the compiler main unit 14.

〔実施例] 第2図は本発明の実施例に係る変換処理の例第3図は本
発明の実施例に係るリスト出力ハンドラの処理フローを
示す。
[Embodiment] FIG. 2 shows an example of conversion processing according to an embodiment of the present invention. FIG. 3 shows a processing flow of a list output handler according to an embodiment of the present invention.

以下、実施例として、EB−CDICコードとASCI
Iコードの2種類のコード系に対応できるC0BOL言
語などのコンパイラへの適用例を説明する。
Below, as an example, EB-CDIC code and ASCI
An example of application to a compiler such as a C0BOL language that can handle two types of I-code code systems will be described.

第1図に示すコンパイラ本体部14は、一方のコード系
1例えばEBCD I Cコードを、19とした処理を
行う。この場合、原始プログラム10がASCIIコー
ド系であれば、リストデータバッファ15に用意される
データがEBCDICコード系であるので、リスト出力
ハンドラ16は、EBCD I Cコード系からASC
IIコード系への変換処理を行う。
The compiler main unit 14 shown in FIG. 1 performs processing in which one code system 1, for example, the EBCD IC code, is set to 19. In this case, if the source program 10 is an ASCII code system, the data prepared in the list data buffer 15 is an EBCDIC code system, so the list output handler 16 converts the data from the EBCD IC code system to the ASCII code system.
Performs conversion processing to the II code system.

この変換では3例えば第2図(イ)に示す変換テーブル
を用いる。この変換テーブルは 8ピントの文字コード
を変換するために、8ビツトのEBCDICコードの入
力値を変位とする位置に。
In this conversion, for example, a conversion table shown in FIG. 2(a) is used. This conversion table is set to the position where the input value of the 8-bit EBCDIC code is used to convert the 8-bit character code.

それぞれ対応するASCIIコードの変換結果を持つ。Each has a corresponding ASCII code conversion result.

変換テーブルのサイズは、この例では256バイトとな
る。
The size of the conversion table is 256 bytes in this example.

例えば、入力印刷データが、第2図(ロ)に示すように
、EBCDICコードで “”ABC・・・という文字
列であるとする。これを16進数で表すと、“’CIC
2C3・・・”である。
For example, assume that the input print data is a character string ""ABC..." in EBCDIC code, as shown in FIG. 2 (b). Expressing this in hexadecimal, “'CIC
2C3...".

第2図(イ)に示す変換テーブルにおいて、EBCDI
Cコードの°’C1’”は ASCIIコードの“’4
1”、”C2”″は°”42゛“C3°゛は43゛・・
・・・・に対応することがわかる。
In the conversion table shown in Figure 2 (a), EBCDI
The C code °'C1' is the ASCII code '4
1", "C2"" is °"42", "C3°" is 43"...
It can be seen that it corresponds to...

そこで、この変換テーブルに基づき、EBCDIcコー
ド系の入力印刷データを、ASCIIコド系に変換すれ
ば、第2図(ハ)に示すように16進数で“’4142
43・・・”となる変換後印刷データが得られる。この
イ直は、ASCIIコード系で°“ABC・・パ°の文
字列である。
Therefore, if the input print data in the EBCDIc code system is converted to the ASCII code system based on this conversion table, the hexadecimal value is "'4142" as shown in Figure 2 (c).
43..." is obtained. This character string is "ABC...PA°" in the ASCII code system.

もし、3種類のコード系をサポートするような場合には
、第2図(イ)に示すような変換テーブルが 2つ必要
になることになる。処理が遅くなるが、変換テーブルを
用いないで、ピント演算による処理論理より、変換を行
うようにしてもよい。
If three types of code systems are to be supported, two conversion tables as shown in Figure 2 (a) will be required. Although the processing becomes slower, the conversion may be performed using processing logic based on focus calculation without using a conversion table.

第1図に示すコンパイラ本体部14は、リスト出力ハン
ドラ16に対するコード系の通知機能を除き、1種類し
かサポートしない従来のコンパイラとほぼ同様であるの
で、処理内容の詳しい説明は省略する。
The compiler main unit 14 shown in FIG. 1 is almost the same as a conventional compiler that supports only one type, except for the code system notification function for the list output handler 16, so a detailed explanation of the processing contents will be omitted.

本発明によるリスト出力ハンドラ16の処理は例えば第
3図に示すようになる。
The processing of the list output handler 16 according to the present invention is shown in FIG. 3, for example.

コンパイラ本体部14から、パラメタとして。From the compiler main body 14 as a parameter.

コード系の通知とバッファに格納された印刷データを受
は取る。そして、まず第3図(イ)に示す処理■により
1通知されたコード系を調べて、変換対象のコード系(
例えばASCII)であるか変換対象外のコード系(例
えばEBCDIC)であるかを判定する。
Receives code notifications and print data stored in the buffer. Then, first, the code system notified in step 1 is examined by the process (1) shown in FIG. 3 (a), and the code system to be converted (
For example, it is determined whether the code system is ASCII (for example, ASCII) or a code system that is not subject to conversion (for example, EBCDIC).

変換対象のコード系である場合、処理■により。If it is a code system to be converted, process ■.

第3図(ロ)に示す変換処理を呼び出す。The conversion process shown in FIG. 3 (b) is called.

その後、処理■により、変換結果の印刷データまたは変
換対象外のコード系によるそのままの印刷データを、プ
リンタ等にリスト出力する。
Thereafter, in process (2), the print data as a result of the conversion or the print data as is in the code system not subject to conversion is output as a list to a printer or the like.

この処理■で呼び出される変換処理では、第3図(ロ)
に示す処理■〜■を実行する。
In the conversion process called in this process ■,
Execute the processes shown in .

処理■では、まず入力印刷データから1文字のデータを
取り出す。次に、処理■により5取り出した1文字を指
標にして、第2図(イ)に示す変換テーブルから、対応
する1文字のコードを取り出す。
In process (2), one character of data is first extracted from the input print data. Next, using the one character extracted by process (2) as an index, the corresponding one-character code is extracted from the conversion table shown in FIG. 2(a).

処理■により、取り出した1文字を、変換後印刷データ
に設定する。処理■により9印刷データが終了したかど
うかを判定し、終了したならば。
Through process (2), one extracted character is set in the converted print data. It is determined whether the 9 print data has been completed through process (1), and if it has been completed.

呼び出し元へ復帰する。終了していなければ、処理■へ
戻り8印刷データの最後まで、同様に処理を繰り返す。
Return to the caller. If the process has not been completed, the process returns to process (2) and the process is repeated in the same manner until the end of the 8 print data.

12はコンパイラ、13は起動モジュール、14はコン
パイラ本体部、15はリストデークバンファ、]6はリ
スト出力ハンドラ、17はリスト出力装置、18は目的
プログラムを表す。
12 is a compiler, 13 is a startup module, 14 is a compiler main body, 15 is a list database buffer, ] 6 is a list output handler, 17 is a list output device, and 18 is a target program.

〔発明の効果〕〔Effect of the invention〕

以上説明したように1本発明によれば、コード系を意識
する処理が1局所的であるため、全体の処理論理が単純
になる。また、コード系を調べる処理が1カ所でよいの
で4実行性能が向上する。
As explained above, according to the present invention, since the processing that takes into account the code system is done locally, the overall processing logic becomes simple. In addition, since the process of checking the code system only needs to be done in one place, the execution performance is improved.

コード系によらず、バッファは1種類でよいため。Regardless of the code system, only one type of buffer is required.

主記憶資源の節減が可能になる。Main memory resources can be saved.

Claims (1)

【特許請求の範囲】 原始プログラム(10)を入力し、それを低レベルの計
算機言語による目的プログラム(18)に翻訳するコン
パイラ(12)を備えた計算機システムにおいて、 出力データの内容と、そのコード系の通知を受け、コー
ド系を調べて、コード系の変換が必要である場合には、
出力データについてコード系を変換してリスト出力する
リスト出力ハンドラ(16)と、翻訳リストのコード系
を処理論理で意識せずに、出力データの内容とコード系
とを上記リスト出力ハンドラ(16)に通知するコンパ
イラ本体部(14)とを備えたことを特徴とする複数コ
ード系に対応する翻訳リスト出力処理方式。
[Claims] In a computer system equipped with a compiler (12) that inputs a source program (10) and translates it into a target program (18) in a low-level computer language, the contents of output data and its code are provided. We will receive notification of the system, examine the code system, and if it is necessary to convert the code system,
A list output handler (16) converts the code system of output data and outputs it as a list, and the list output handler (16) converts the content and code system of the output data without being aware of the code system of the translation list in the processing logic. A translation list output processing method compatible with multiple code systems, characterized by comprising a compiler main unit (14) that notifies the user.
JP14082889A 1989-06-02 1989-06-02 Processing system for translation list output corresponding to plural code systems Pending JPH036624A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14082889A JPH036624A (en) 1989-06-02 1989-06-02 Processing system for translation list output corresponding to plural code systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14082889A JPH036624A (en) 1989-06-02 1989-06-02 Processing system for translation list output corresponding to plural code systems

Publications (1)

Publication Number Publication Date
JPH036624A true JPH036624A (en) 1991-01-14

Family

ID=15277667

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14082889A Pending JPH036624A (en) 1989-06-02 1989-06-02 Processing system for translation list output corresponding to plural code systems

Country Status (1)

Country Link
JP (1) JPH036624A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010515955A (en) * 2006-10-17 2010-05-13 サムスン エスディーエス カンパニー リミテッド Migration apparatus and method for converting mainframe system application program into application program suitable for open system
JP2010205068A (en) * 2009-03-04 2010-09-16 Hitachi Information Systems Ltd Software resource transition system and transition method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010515955A (en) * 2006-10-17 2010-05-13 サムスン エスディーエス カンパニー リミテッド Migration apparatus and method for converting mainframe system application program into application program suitable for open system
JP2010205068A (en) * 2009-03-04 2010-09-16 Hitachi Information Systems Ltd Software resource transition system and transition method thereof

Similar Documents

Publication Publication Date Title
JPH08314728A (en) Method and apparatus for conversion of source program into object program
JPH09212356A (en) System for protecting computer software described in interpreter language
JP2006179020A (en) System and method for correcting output of computer program without correction in source code
JP3130828B2 (en) Assembly processing method
JPH036624A (en) Processing system for translation list output corresponding to plural code systems
JPH04286029A (en) Source program converter
JPH0527947A (en) Year order assurance method
JPH09179759A (en) Device and method for processing data base for variable length object and storage medium for storing data base processing program
JP2006505043A (en) Hardware parser accelerator
EP0803806A2 (en) Data conversion mechanism for computer system
JP2591212B2 (en) High-speed interrupt processing device
JP2674887B2 (en) Word processor
JP2588522B2 (en) Machine translation dictionary access method
JP2000339172A (en) Method for making memory efficient
JPH04248624A (en) Program conversion processor
JPH05150960A (en) Precompiler
CN114756140A (en) Rarely-used word input processing method and device, electronic equipment and storage medium
JPH021027A (en) Compiling system for compressed source program
JPH10301930A (en) Document processor
JPH0375935A (en) Merging system for interpreter type language
JPH03147179A (en) Machine translation device
JPH038062A (en) Document converting device
JPH0340021A (en) Document connection print processing system
JPH01159733A (en) Source program generation processing system in precompiler
JPH0443308B2 (en)