JPS63131232A - コンピユータ・プログラムのためのメツセージ・フアイル形成方法 - Google Patents
コンピユータ・プログラムのためのメツセージ・フアイル形成方法Info
- Publication number
- JPS63131232A JPS63131232A JP62219313A JP21931387A JPS63131232A JP S63131232 A JPS63131232 A JP S63131232A JP 62219313 A JP62219313 A JP 62219313A JP 21931387 A JP21931387 A JP 21931387A JP S63131232 A JPS63131232 A JP S63131232A
- Authority
- JP
- Japan
- Prior art keywords
- message
- token
- word
- file
- words
- 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
- 238000004590 computer program Methods 0.000 title claims description 11
- 230000015572 biosynthetic process Effects 0.000 title 1
- 238000000034 method Methods 0.000 claims description 20
- 238000010586 diagram Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 8
- 238000007906 compression Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 244000062793 Sorghum vulgare Species 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005056 compaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 235000019713 millet Nutrition 0.000 description 1
- 238000002407 reforming Methods 0.000 description 1
- 235000002020 sage Nutrition 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/42—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Devices For Executing Special Programs (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
以下の順序で本発明を説明する。
A、産業上の利用分野
B、従来技術
C0発明が解決しようとする問題点
り9問題点を解決するための手段
E、実施例
F0発明の効果
A、産業上の利用分野
この発明は、コンピュータ拳プログラムに関するもので
あり、より詳しくは、コンピュータ・プログラム内に含
まれるメッセージ・ファイルを形成することに関する。
あり、より詳しくは、コンピュータ・プログラム内に含
まれるメッセージ・ファイルを形成することに関する。
B、従来技術
]ンピュータがオペレータと通信するために、コンピュ
ータ・プログラムは多くの場合、オペレータに選択的に
表示されるメツセージを含み、これにより、さらに入力
が必要であることや、ある処理の結果がオペレータに通
知される。
ータ・プログラムは多くの場合、オペレータに選択的に
表示されるメツセージを含み、これにより、さらに入力
が必要であることや、ある処理の結果がオペレータに通
知される。
コンピュータ拳プログラムがより7ユーザー・フレンド
リ−”になるにつれて、ユーザーとの通信を容易ならし
めるためにプログラムによって採用されるメツセージの
数も増加することになる。
リ−”になるにつれて、ユーザーとの通信を容易ならし
めるためにプログラムによって採用されるメツセージの
数も増加することになる。
そのメツセージの数が増加すると、コンピュータ拳プロ
グラムによって必要とされるメモリ容量も増加する。従
って、コンピュータの記憶設備に過度の負担をかけるこ
となくユーザーにメツセージを有効に与える必要がある
。
グラムによって必要とされるメモリ容量も増加する。従
って、コンピュータの記憶設備に過度の負担をかけるこ
となくユーザーにメツセージを有効に与える必要がある
。
メモリ記憶を有効に使用するために採用される技術とし
て、データまたはテキストの圧縮がある。
て、データまたはテキストの圧縮がある。
テキスト圧縮の1つの方法は、IBMテクニカル−ディ
スクロジャープル7−イン、Vol、24、No。
スクロジャープル7−イン、Vol、24、No。
IB、1981年6月の6ワード・マツピングによるテ
キスト短縮(Text Compaction b
yWord Mapping )″と題する論文に開示
されており、この論文は、テキストを検索するときに文
字またはシンボルに有効にアクセスするために使用され
るハフマ/(Huffman)コーディング及びワード
・マツピングについて述べている。
キスト短縮(Text Compaction b
yWord Mapping )″と題する論文に開示
されており、この論文は、テキストを検索するときに文
字またはシンボルに有効にアクセスするために使用され
るハフマ/(Huffman)コーディング及びワード
・マツピングについて述べている。
別の技術は、IBMテクニカル・ディスクロジー?−プ
ルティン、Vol、 24、No、9.1982年2月
の”メツセージ及びメニュー・テーブル短縮/圧縮(M
essage and Menu TableCo
mpaction/Compression )”と題
する論文に示されており、この論文は、キャラクタ・シ
ンボル名称を用いてメツセージにアクセスするための技
術を開示する。この技術は、各メツセージの異なる属性
を定義するいくつかのテーブルを使用する。そしてテキ
ストの短縮は、メツセージ中のデータの冗長度を認識し
、テーブル中に一回だけデータを与えることによって達
成される。
ルティン、Vol、 24、No、9.1982年2月
の”メツセージ及びメニュー・テーブル短縮/圧縮(M
essage and Menu TableCo
mpaction/Compression )”と題
する論文に示されており、この論文は、キャラクタ・シ
ンボル名称を用いてメツセージにアクセスするための技
術を開示する。この技術は、各メツセージの異なる属性
を定義するいくつかのテーブルを使用する。そしてテキ
ストの短縮は、メツセージ中のデータの冗長度を認識し
、テーブル中に一回だけデータを与えることによって達
成される。
この冗長データは、可変長コード・ワードによって表示
される。
される。
さらに別のメツセージ圧縮技術が、IBMテクニカル・
ディスクロジャ・プルティン、 Vol、 23、No
、9.1981年2月の“メツセージ圧縮方法(Mes
sage Compression Method
”と題する論文に示されている。この論文は、圧縮され
たメツセージ・シンボル・ストリングの一部を記憶する
ための局所メモリの使用を開示する。
ディスクロジャ・プルティン、 Vol、 23、No
、9.1981年2月の“メツセージ圧縮方法(Mes
sage Compression Method
”と題する論文に示されている。この論文は、圧縮され
たメツセージ・シンボル・ストリングの一部を記憶する
ための局所メモリの使用を開示する。
このとき、圧縮されたメツセージ・ストリング中の特殊
なコマンドが、よく使用されるシンボルを含む局所メモ
リ位置を指定するポインタにアドレスを与える。
なコマンドが、よく使用されるシンボルを含む局所メモ
リ位置を指定するポインタにアドレスを与える。
さらに別のメツセージ圧縮技術が、IBMテクニカルφ
ディスクロジャ・プルティ:y、Vol、 27、No
、12.1985年5月の”語粟に基づくメモリ圧縮”
と題する論文に開示されている。この論文は、いくつか
の汎用ワードを記憶するために読取り専用メモリ(また
は読取り専用記憶)を使用することを述べている。さら
に、コンピュータは、コンピュータによって与えられる
べき文書に固有のワードを記憶するために使用されるラ
ンダム・アクセス・メそり(RAM)を含むことになる
。ROM中に汎用ワードを設けることによって、これら
の頻用ワードはRAM中に記憶する必要がなくそのRO
Mアドレスによって呼び出すことができる。そして、文
書が処理されるとき、この汎用ワード・メモリは、共通
に使用されるワードのコーディングを可能ならしめるた
めに使用される。これらのコードには、ワード自体が要
するよりもはるかに少ないメモリ空間しか必要でない。
ディスクロジャ・プルティ:y、Vol、 27、No
、12.1985年5月の”語粟に基づくメモリ圧縮”
と題する論文に開示されている。この論文は、いくつか
の汎用ワードを記憶するために読取り専用メモリ(また
は読取り専用記憶)を使用することを述べている。さら
に、コンピュータは、コンピュータによって与えられる
べき文書に固有のワードを記憶するために使用されるラ
ンダム・アクセス・メそり(RAM)を含むことになる
。ROM中に汎用ワードを設けることによって、これら
の頻用ワードはRAM中に記憶する必要がなくそのRO
Mアドレスによって呼び出すことができる。そして、文
書が処理されるとき、この汎用ワード・メモリは、共通
に使用されるワードのコーディングを可能ならしめるた
めに使用される。これらのコードには、ワード自体が要
するよりもはるかに少ないメモリ空間しか必要でない。
それゆえ、汎用ワードROMを使用することによって、
メツセージは、ワードがエンコードされなかった場合よ
りも少ないメモリ空間中に記憶することができる。
メツセージは、ワードがエンコードされなかった場合よ
りも少ないメモリ空間中に記憶することができる。
メッセージ・ファイル構造の他の側面としては、プログ
ラムを外国で使用しようとする場合に翻訳のためにメッ
セージ・ファイルが容易にアクセス可能でな(てはなら
ないという要請がある。換言すると、コンピュータ・プ
ログラム中に含まれるメツセージは、これらのワードが
外国語の対応する単語に翻訳可能であり、以て外国のコ
ンピュータ・オペレータがそのプログラムを使用するの
を可能ならしめるために、容易にアクセスできなげれば
ならない。
ラムを外国で使用しようとする場合に翻訳のためにメッ
セージ・ファイルが容易にアクセス可能でな(てはなら
ないという要請がある。換言すると、コンピュータ・プ
ログラム中に含まれるメツセージは、これらのワードが
外国語の対応する単語に翻訳可能であり、以て外国のコ
ンピュータ・オペレータがそのプログラムを使用するの
を可能ならしめるために、容易にアクセスできなげれば
ならない。
C0発明が解決しようとする問題点
本発明の目的は、コンピュータ・メモリを有効に使用す
るとともに翻訳のためメツセージのワードにアクセスを
与えるようにメッセージ・ファイルを形成するための方
法を提供することにある。
るとともに翻訳のためメツセージのワードにアクセスを
与えるようにメッセージ・ファイルを形成するための方
法を提供することにある。
本発明の他の目的は、上述のメッセージ・ファイル構造
中に記憶されたメツセージを改変(reform)する
ための方法を提供することにある。
中に記憶されたメツセージを改変(reform)する
ための方法を提供することにある。
D3問題点を解決するための手段
本発明によれば、メツセージのデータ・ファイルを形成
するための方法が与えられる。これらのメツセージは、
順次的にいくつかのテキスト・ワードを含むものとして
定義され、コンピュータ・プログラム中に記憶されるべ
きものである。この方法は、メツセージ・ワー ドに対
応するエントリをもつメッセージ・ワード・テーブルと
しての第1のファイル部分を形成する段階を有する。そ
れらのエントリは、テーブル中で、メツセージ中にあら
れれる頻度によって順序づげられている。第2の段階は
、各メツセージのためのトークン・ストリングを含むメ
ツセージ・トークン・ストリングとしての第2のファイ
ル部分を形成することである。トークン・ストリングの
各トークンはメツセージ中のワードをあられし、それら
のトークンは、ストリング中で、対応するメツセージの
列中の対応するワードの位置によって順序づけられる。
するための方法が与えられる。これらのメツセージは、
順次的にいくつかのテキスト・ワードを含むものとして
定義され、コンピュータ・プログラム中に記憶されるべ
きものである。この方法は、メツセージ・ワー ドに対
応するエントリをもつメッセージ・ワード・テーブルと
しての第1のファイル部分を形成する段階を有する。そ
れらのエントリは、テーブル中で、メツセージ中にあら
れれる頻度によって順序づげられている。第2の段階は
、各メツセージのためのトークン・ストリングを含むメ
ツセージ・トークン・ストリングとしての第2のファイ
ル部分を形成することである。トークン・ストリングの
各トークンはメツセージ中のワードをあられし、それら
のトークンは、ストリング中で、対応するメツセージの
列中の対応するワードの位置によって順序づけられる。
各トークンは、メッセージ・ワード・テーブル中の対応
するワードの位置をあらわす値を含む。第3の段階は、
各メツセージ及び対応するポインタのための固有の識別
子を含むメツセージ・ルック−アップ・テーブルとして
の第3のファイル部分を形成することである。この対応
するポインタは、メツセージ・トークン・ストリング・
テーブル中の対応するメツセージのためのトークン・ス
トリングのアドレスを示す。
するワードの位置をあらわす値を含む。第3の段階は、
各メツセージ及び対応するポインタのための固有の識別
子を含むメツセージ・ルック−アップ・テーブルとして
の第3のファイル部分を形成することである。この対応
するポインタは、メツセージ・トークン・ストリング・
テーブル中の対応するメツセージのためのトークン・ス
トリングのアドレスを示す。
好適な実施例においては、圧縮されたメッセージ・ファ
イルを構築するだめの固有の方法が与えられる。メツセ
ージは、プログラムから、オペレータへ伝達すべき情報
を含むワードの列として定義される。ここで述べる固有
の方法は、6つの異なる部分に圧縮されたメッセージ・
ファイルを構築することからなる。
イルを構築するだめの固有の方法が与えられる。メツセ
ージは、プログラムから、オペレータへ伝達すべき情報
を含むワードの列として定義される。ここで述べる固有
の方法は、6つの異なる部分に圧縮されたメッセージ・
ファイルを構築することからなる。
メツセージの第1の部分は、メツセージ・チキン・トの
ファイル中に含まれる各ワードの単一の例を具備するワ
ードのテーブル(シンボル・テーブル)からなる。これ
らのワードは、メッセージ・ファイル中のその発生頻度
に応じて順序づけられる。
ファイル中に含まれる各ワードの単一の例を具備するワ
ードのテーブル(シンボル・テーブル)からなる。これ
らのワードは、メッセージ・ファイル中のその発生頻度
に応じて順序づけられる。
その第2の部分は、各メツセージのためのトークンの列
から成る。このトークンの列は、ワードがあられすメツ
セージ中のワードと同様に順序づげられている。メツセ
ージ中のワードの順序を示すだけでな(、(メッセージ
・ワードをあらわす)ワード・トークンはまた、メツセ
ージ中でそのワードの後にスペースまたは非スペースの
どちらが続いているのか、及び上述のシンボル・テーブ
ル中の対応するワードの位置をあらわす値をも表示する
。メツセージ中のワードをあらわすのみならず、トーク
ンは、使用中のプログラムがプログラム・ユーザーにメ
ツセージを表示する直前にメツセージ中に挿入すべき可
変情報のためのプレースホルダ(placeholde
r )として使用することができる。このタイプのトー
クンは、メツセージ中で変数の後にスペースまたは非ス
ペースのどちらが続くか、及びメツセージ中に挿入する
ためにどのタイプのプロ名ラムがプログラムによって与
えられるべきかを表示する。許容し得る変数のタイプは
、キャラクタ・ストリング(すなわちテキスト・ワード
)か、コンピュータの内部型式からキャラクタ・ストリ
ングに変換されな(てはならない整数か、または予め定
義したワードの集合であるリングのどれかであり、それ
らのうちの1つが、メツセージをユーザーに表示する直
前にメツセージ中に挿入するためにプログラムによって
選択されることになる。また、特殊なトークンがメツセ
ージ・トークン・ストリングの末尾に配置され、メツセ
ージの終端に到達したことが表示される。
から成る。このトークンの列は、ワードがあられすメツ
セージ中のワードと同様に順序づげられている。メツセ
ージ中のワードの順序を示すだけでな(、(メッセージ
・ワードをあらわす)ワード・トークンはまた、メツセ
ージ中でそのワードの後にスペースまたは非スペースの
どちらが続いているのか、及び上述のシンボル・テーブ
ル中の対応するワードの位置をあらわす値をも表示する
。メツセージ中のワードをあらわすのみならず、トーク
ンは、使用中のプログラムがプログラム・ユーザーにメ
ツセージを表示する直前にメツセージ中に挿入すべき可
変情報のためのプレースホルダ(placeholde
r )として使用することができる。このタイプのトー
クンは、メツセージ中で変数の後にスペースまたは非ス
ペースのどちらが続くか、及びメツセージ中に挿入する
ためにどのタイプのプロ名ラムがプログラムによって与
えられるべきかを表示する。許容し得る変数のタイプは
、キャラクタ・ストリング(すなわちテキスト・ワード
)か、コンピュータの内部型式からキャラクタ・ストリ
ングに変換されな(てはならない整数か、または予め定
義したワードの集合であるリングのどれかであり、それ
らのうちの1つが、メツセージをユーザーに表示する直
前にメツセージ中に挿入するためにプログラムによって
選択されることになる。また、特殊なトークンがメツセ
ージ・トークン・ストリングの末尾に配置され、メツセ
ージの終端に到達したことが表示される。
圧縮されたメッセージ・ファイルの第3の部分は(メッ
セージ・ファイル中の各メツセージに1つずづの)エン
トリのテーブルから成り、その各々は、対応するメツセ
ージのメツセージ番号と、メツセージを記述するトーク
ンの組の圧縮されたメッセージ・ファイル中の位置を含
む。
セージ・ファイル中の各メツセージに1つずづの)エン
トリのテーブルから成り、その各々は、対応するメツセ
ージのメツセージ番号と、メツセージを記述するトーク
ンの組の圧縮されたメッセージ・ファイル中の位置を含
む。
オペレータに表示するためにプログラムによって使用す
べきすべてのメツセージは初期的には人間によって容易
に使用され変更される形式で(すなわち英語または他の
国の言語で)ソース・メッセージ・ファイル中に配置さ
れる。このソース・メツセージ睦ファイルは、もとのメ
ツセージが書かれた言語を使用する国以外の国で使用す
るために、もとの言語から別の言語に容易に翻訳するこ
とができる。
べきすべてのメツセージは初期的には人間によって容易
に使用され変更される形式で(すなわち英語または他の
国の言語で)ソース・メッセージ・ファイル中に配置さ
れる。このソース・メツセージ睦ファイルは、もとのメ
ツセージが書かれた言語を使用する国以外の国で使用す
るために、もとの言語から別の言語に容易に翻訳するこ
とができる。
ソース・メッセージ・ファイルが(正確な言語で)完成
されると、このソース書メッセージ・ファイルが、圧縮
されたメッセージ・ファイルを上述の形式で構築するプ
ログラム(メツセージ・コンパイラ)によって処理され
る。この圧縮されたメッセージ・ファイル(ユーザー・
フレンドリよりもむしろコンピュータ・フレンドリであ
る)は次に、ソース・メッセージ・ファイル中で使用さ
れている言語に対応する国で使用するためにプログラム
とともに配布される。このソース・ファイルは、複数の
言語に翻訳し、個々の言語のためにコンパイルし、使用
国でプログラムとともに配布することができる。このと
き、異なる言語に対しては、ソース・メツセージのファ
イルのみを変更し再コンパイルすればよい。そして、す
べての言語依存情報をメッセージ・ファイル中に保持し
ておくことにより、複数の国で使用するためにプログラ
ムを変更する必要性がなくなる。メッセージ・ワード魯
テーブル(マたはシンボル・テーブル)においては、ワ
ード・キャラクタの各列が、ワードの終りを示す特殊な
終端キャラクタを含んでいる。トークン・ストリング中
のトークンは、メツセージ慟ワード1テーブル中のワー
ドのオフセット位置である値を含むことにより、メッセ
ージ・ワード・テーブル中のワードの位置を表示する。
されると、このソース書メッセージ・ファイルが、圧縮
されたメッセージ・ファイルを上述の形式で構築するプ
ログラム(メツセージ・コンパイラ)によって処理され
る。この圧縮されたメッセージ・ファイル(ユーザー・
フレンドリよりもむしろコンピュータ・フレンドリであ
る)は次に、ソース・メッセージ・ファイル中で使用さ
れている言語に対応する国で使用するためにプログラム
とともに配布される。このソース・ファイルは、複数の
言語に翻訳し、個々の言語のためにコンパイルし、使用
国でプログラムとともに配布することができる。このと
き、異なる言語に対しては、ソース・メツセージのファ
イルのみを変更し再コンパイルすればよい。そして、す
べての言語依存情報をメッセージ・ファイル中に保持し
ておくことにより、複数の国で使用するためにプログラ
ムを変更する必要性がなくなる。メッセージ・ワード魯
テーブル(マたはシンボル・テーブル)においては、ワ
ード・キャラクタの各列が、ワードの終りを示す特殊な
終端キャラクタを含んでいる。トークン・ストリング中
のトークンは、メツセージ慟ワード1テーブル中のワー
ドのオフセット位置である値を含むことにより、メッセ
ージ・ワード・テーブル中のワードの位置を表示する。
この値は、2バイト・インクリメント中の対応するワー
ドの位置を意味する。さらに、あるトークンは1バイト
の情報しか含まず、メッセージ・ワード・テーブル中の
より使用頻度が高いワード(すなわち、テーブルの先頭
付近のワード)の位置に対応する。
ドの位置を意味する。さらに、あるトークンは1バイト
の情報しか含まず、メッセージ・ワード・テーブル中の
より使用頻度が高いワード(すなわち、テーブルの先頭
付近のワード)の位置に対応する。
好適な実施例のさらに別の側面としては、メツセージ・
ストリング中の変数の位置を表示するために、トークン
を使用するということがある。これらの変数は、それら
のトークンによって、いくつかの異なるタイプのうちの
1つであると定義される。あるタイプのトークンは、複
数のワードのうちの1つを示す変数であるリング変数と
呼ばれる。このリング変数トークンはトークン・ストリ
ング中に含まれ、そのリング変数により表示されるべき
ワードがメッセージ・ワード・テーブル中に含まれ、そ
のリング変数トークンに近接するトークン・ストリング
中の対応するワード・トークンによって表示される。
ストリング中の変数の位置を表示するために、トークン
を使用するということがある。これらの変数は、それら
のトークンによって、いくつかの異なるタイプのうちの
1つであると定義される。あるタイプのトークンは、複
数のワードのうちの1つを示す変数であるリング変数と
呼ばれる。このリング変数トークンはトークン・ストリ
ング中に含まれ、そのリング変数により表示されるべき
ワードがメッセージ・ワード・テーブル中に含まれ、そ
のリング変数トークンに近接するトークン・ストリング
中の対応するワード・トークンによって表示される。
また、好適な実施例は、ファイルのメッセージ・ルック
−アンプ・テーブル部分中で識別子を見出し、その識別
子に対応するポインタを検索する段階を有する、固有の
識別子をもつメツセージを検索する方法を含む。このポ
インタは次に、そのメツセージをあらわす特定のトーク
ン・ストリングにアクセスすべ(、トークン・ストリン
グ・テーブルにアクセスするために使用される。各トー
クンは次に、メッセージ・ワード・テーブル中でメツセ
ージの各ワードを見出すために使用される。
−アンプ・テーブル部分中で識別子を見出し、その識別
子に対応するポインタを検索する段階を有する、固有の
識別子をもつメツセージを検索する方法を含む。このポ
インタは次に、そのメツセージをあらわす特定のトーク
ン・ストリングにアクセスすべ(、トークン・ストリン
グ・テーブルにアクセスするために使用される。各トー
クンは次に、メッセージ・ワード・テーブル中でメツセ
ージの各ワードを見出すために使用される。
これらのワードは、バッファ中で、トークン・ストリン
グ中の対応するトークンの出現の順序に従ってアセンブ
ルされる。バッファ中のアセンブルされたワードは次に
、アセンブルされたメツセージとして渡される。
グ中の対応するトークンの出現の順序に従ってアセンブ
ルされる。バッファ中のアセンブルされたワードは次に
、アセンブルされたメツセージとして渡される。
E、実施例
本発明は、コンピュータ拳プログラムによって使用され
る有効な記憶量のメツセージを与えるという問題に向け
られたものである。この発明は、コンピュータ・メモリ
を節約するために短縮され、あるいは圧縮された様式で
メツセージ・オブジェクト・ファイルを効率的に与える
とともに、これらのメツセージを外国語に翻訳すること
を可能ならしめるためメツセージ中のワードにアクセス
を与えるような機構を提供する。
る有効な記憶量のメツセージを与えるという問題に向け
られたものである。この発明は、コンピュータ・メモリ
を節約するために短縮され、あるいは圧縮された様式で
メツセージ・オブジェクト・ファイルを効率的に与える
とともに、これらのメツセージを外国語に翻訳すること
を可能ならしめるためメツセージ中のワードにアクセス
を与えるような機構を提供する。
第1図は、メツセージ・ソース・ファイルのコンパイル
を示すブロック図である。本発明においては、すべての
メツセージが、ファイルをラベルされたメツセージ・ソ
ース・ファイル10中にある。メツセージ・ソース・フ
ァイル10は次にオブジェクト・コードを与えるために
、コンパイラ12によってコンパイルされる。特に、メ
ッセージ・ファイルのためのオブジェクト・コードが、
メツセージ・オブジェクト・ファイル14中に含まれて
いる。
を示すブロック図である。本発明においては、すべての
メツセージが、ファイルをラベルされたメツセージ・ソ
ース・ファイル10中にある。メツセージ・ソース・フ
ァイル10は次にオブジェクト・コードを与えるために
、コンパイラ12によってコンパイルされる。特に、メ
ッセージ・ファイルのためのオブジェクト・コードが、
メツセージ・オブジェクト・ファイル14中に含まれて
いる。
第2図は、メツセージ・オブジェクト・ファイルを用い
て、プログラムの走行時間の実行の間にメツセージのフ
ォーマット化を行うことを示す。
て、プログラムの走行時間の実行の間にメツセージのフ
ォーマット化を行うことを示す。
特に、第2図では、アプリケーション・プログラムが、
走行時間実行プログラム16と呼ばれる。
走行時間実行プログラム16と呼ばれる。
この走行時間実行プログラム16は、メツセージ−サー
ビス令ルーチン20にメツセージ・コール18を出す。
ビス令ルーチン20にメツセージ・コール18を出す。
メツセージ・サービス・ルーチンは、メツセージ・オブ
ジェクト・ファイル14にアクセスする。メツセージ・
サービス・ルーチン20は次に、フォーマットされたメ
ツセージ24を、走行時間実行プログラム16に戻す。
ジェクト・ファイル14にアクセスする。メツセージ・
サービス・ルーチン20は次に、フォーマットされたメ
ツセージ24を、走行時間実行プログラム16に戻す。
前述のように、このフォーマットされたメツセージはし
ばしげ、オペレータにさらなる人力を要求し、あるいセ は処理の結果を知ら#るために、ディスプレイまたはあ
る出力上にあられれる。
ばしげ、オペレータにさらなる人力を要求し、あるいセ は処理の結果を知ら#るために、ディスプレイまたはあ
る出力上にあられれる。
第6図は、コンパイラ−2の使用によってメツセージ・
オブジェクト・ファイル14を形成する処理をあらわす
。最初に、すべてのメツセージとそれに関連するメツセ
ージ番号がブロック26で入力される。これらのメツセ
ージはそのソース・コードからアセンブルされる。本願
発明の詳細な説明の後ろの箇所の表1は、メツセージ。
オブジェクト・ファイル14を形成する処理をあらわす
。最初に、すべてのメツセージとそれに関連するメツセ
ージ番号がブロック26で入力される。これらのメツセ
ージはそのソース・コードからアセンブルされる。本願
発明の詳細な説明の後ろの箇所の表1は、メツセージ。
及び変数を定義するソース・コードの例をあらわす。こ
のメツセージ・ソースは、” Device num
ber%1 iS %2.”と読まれる。%1は、示さ
れているように整数である。この整数は、メツセージ中
で、Deviceに対する整数番号を定義する。
のメツセージ・ソースは、” Device num
ber%1 iS %2.”と読まれる。%1は、示さ
れているように整数である。この整数は、メツセージ中
で、Deviceに対する整数番号を定義する。
%2は、”オン−ライン”または6オフーライン”のう
ちどちらかを指定することになるリング変数である、ソ
ース・コードからの第2の変数を定義する。次に段階5
0で、メツセージ・シンボル・テーブルが構築される。
ちどちらかを指定することになるリング変数である、ソ
ース・コードからの第2の変数を定義する。次に段階5
0で、メツセージ・シンボル・テーブルが構築される。
メツセージ・シンボル・テーブルの構築は、すべてのメ
ツセージ中に含まれている各ワードのテーブルを、その
メツセージ中の最も使用頻度が高いテーブルから始まっ
てそのメツセージ中の最も使用頻度が低いテーブルに至
る順序で構成する段階を有する。これらのメツセージの
各々は、外国語のためにメツセージの新しいメツセージ
・ソース・ファイルを形成するように翻訳されアセンブ
ルされる。この新しいメツセージ・ソース・ファイルハ
、コンパイラ12によって、その外国語用に最適化され
た新しいメツセージ・オブジェクト・ファイルを形成す
るようにコンパイルすることができる。第6図は、メツ
セージ・シンボル・テーブルの図である。メツセージ・
シンボル・テーブル620部分66には、DEVICE
″というワードが含まれている。
ツセージ中に含まれている各ワードのテーブルを、その
メツセージ中の最も使用頻度が高いテーブルから始まっ
てそのメツセージ中の最も使用頻度が低いテーブルに至
る順序で構成する段階を有する。これらのメツセージの
各々は、外国語のためにメツセージの新しいメツセージ
・ソース・ファイルを形成するように翻訳されアセンブ
ルされる。この新しいメツセージ・ソース・ファイルハ
、コンパイラ12によって、その外国語用に最適化され
た新しいメツセージ・オブジェクト・ファイルを形成す
るようにコンパイルすることができる。第6図は、メツ
セージ・シンボル・テーブルの図である。メツセージ・
シンボル・テーブル620部分66には、DEVICE
″というワードが含まれている。
このテーブルは、各バイトに1文字ずつを含む2バイト
・インクリメントとして構成されることに注意されたい
。また、そのワードの終端は、空白で終了している。こ
のテーブルは、2バイト・インクリメントを含んでお、
9.”DEVICE″というワードは偶数個の文字をも
つので、”DEVICE”というワードをテーブル62
に入力す企には、図示のように、それが2個の空白バイ
トにより終了することが必要である。図示されているよ
うに、メツセージ・シンボル・テーブルはそのバイト・
オフセットによりアクセスされる。それゆえ、単一バイ
ト(0から127)が、メツセージ・シンボル・テーブ
ル中の128個の2バイト位置に含まれているワードを
突きとめることになる。
・インクリメントとして構成されることに注意されたい
。また、そのワードの終端は、空白で終了している。こ
のテーブルは、2バイト・インクリメントを含んでお、
9.”DEVICE″というワードは偶数個の文字をも
つので、”DEVICE”というワードをテーブル62
に入力す企には、図示のように、それが2個の空白バイ
トにより終了することが必要である。図示されているよ
うに、メツセージ・シンボル・テーブルはそのバイト・
オフセットによりアクセスされる。それゆえ、単一バイ
ト(0から127)が、メツセージ・シンボル・テーブ
ル中の128個の2バイト位置に含まれているワードを
突きとめることになる。
すべてのワードがメツセージ・シンボル・テーブル62
に配置されてしまうと、第3図の段階32で、ワードと
変数のトークンが形成される。本願発明の詳細な説明の
後ろの箇所の表1がこのトークンをあらわす。ワードは
、短ワード・トークンまたは長ワード・トークンのどち
らかによってあられすことができる。短ワード・トーク
ンは、メツセージ・シンボル・テーブル中の最初の12
8個の2バイト位置内のワードのオフセットを与える。
に配置されてしまうと、第3図の段階32で、ワードと
変数のトークンが形成される。本願発明の詳細な説明の
後ろの箇所の表1がこのトークンをあらわす。ワードは
、短ワード・トークンまたは長ワード・トークンのどち
らかによってあられすことができる。短ワード・トーク
ンは、メツセージ・シンボル・テーブル中の最初の12
8個の2バイト位置内のワードのオフセットを与える。
長ワード・トークンは、メツセージ・シンボル・テーブ
ル中の128個の2バイト位置を超えるオフセット位置
のすべてのワードにアクセスするために必要である。長
ワード・トークンは13ビツトの半ワード・オフセット
に加えて、後方スペースが存在するか否かを表示するコ
ード・ビットSを含む。短ワード・トークンでは、後方
スペースは強制的であることに注意されたい。言いかえ
ると、もしメツセージ中のワードの後にスペースが続か
ないなら、そのワードは短ワード・トークンによってあ
られすことができない。
ル中の128個の2バイト位置を超えるオフセット位置
のすべてのワードにアクセスするために必要である。長
ワード・トークンは13ビツトの半ワード・オフセット
に加えて、後方スペースが存在するか否かを表示するコ
ード・ビットSを含む。短ワード・トークンでは、後方
スペースは強制的であることに注意されたい。言いかえ
ると、もしメツセージ中のワードの後にスペースが続か
ないなら、そのワードは短ワード・トークンによってあ
られすことができない。
メツセージ中に含まれている変数もトークンで指定され
る。短変数トークンは、変数タイプと変数番号の表示を
含む。変数タイプは、変数が、整数か、データのストリ
ングか、時間か、日付か、・リング変数のどれかをあら
わす。リング変数は短変数トークンによってはあられす
ことができないことに注意されたい。リング変数は、長
変数トークンによってのみあられすことができる。長変
数トークンはさらに、後方スペースの表示と、リング変
数の場合のリング・メンバーの数をあらわす。
る。短変数トークンは、変数タイプと変数番号の表示を
含む。変数タイプは、変数が、整数か、データのストリ
ングか、時間か、日付か、・リング変数のどれかをあら
わす。リング変数は短変数トークンによってはあられす
ことができないことに注意されたい。リング変数は、長
変数トークンによってのみあられすことができる。長変
数トークンはさらに、後方スペースの表示と、リング変
数の場合のリング・メンバーの数をあらわす。
リング変数の内容については後述する。また、変数の後
にスペースが続いていなければ、変数を短変数トークン
によってあられすことができないことに注意されたい。
にスペースが続いていなければ、変数を短変数トークン
によってあられすことができないことに注意されたい。
表!の最後のタイプのトークンは、メツセージ終了トー
クンである。このトークンは、トークン・ストリングの
終了を指定する。
クンである。このトークンは、トークン・ストリングの
終了を指定する。
尚、すべての短及び長トークンのビット値と、メツセー
ジ終了トークンのビット値は固有的であることに注意さ
れたい。これらのトークンを使用することによって、メ
ツセージ中のワードをコンピュータを有効利用するよう
な方法でエンコードすることができる。
ジ終了トークンのビット値は固有的であることに注意さ
れたい。これらのトークンを使用することによって、メ
ツセージ中のワードをコンピュータを有効利用するよう
な方法でエンコードすることができる。
第3図に戻って、段階34において、トークン・ストリ
ング・テーブルが構築される。このことは、各メツセー
ジにつきそのメツセージのワード及び変数をトークンと
してエンコードし、これらのトークンをメツセージ中の
ワードと変数の対応する順序をあらわす順序でアセンブ
ルすることによって達成される。これらのトークン・ス
トリングは次にトークン・ストリング・テーブルにアセ
ンブルされる。次にトークン・ストリング・テーブルの
各トークン・ストリング中の最初のトークンの位置にメ
ツセージ番号が結合される。メツセージ番号とそれに対
応するメツセージφトークン・ストリング・ポインタの
結合体は、次に、段階36でメツセージ・ルック−アッ
プ0テーブルにアセンブルされる。段階38では、3つ
のポインタ52.54及び56(第5図)が付与される
。
ング・テーブルが構築される。このことは、各メツセー
ジにつきそのメツセージのワード及び変数をトークンと
してエンコードし、これらのトークンをメツセージ中の
ワードと変数の対応する順序をあらわす順序でアセンブ
ルすることによって達成される。これらのトークン・ス
トリングは次にトークン・ストリング・テーブルにアセ
ンブルされる。次にトークン・ストリング・テーブルの
各トークン・ストリング中の最初のトークンの位置にメ
ツセージ番号が結合される。メツセージ番号とそれに対
応するメツセージφトークン・ストリング・ポインタの
結合体は、次に、段階36でメツセージ・ルック−アッ
プ0テーブルにアセンブルされる。段階38では、3つ
のポインタ52.54及び56(第5図)が付与される
。
第5図では、メツセージ・オブジェクト・ファイル14
が、メツセージ−トークン拳ストリング・テーブル60
.メツセージ・シンボル・テーブル62及びメツセージ
・ルックアップ・テーブル64を含むものとして図示さ
れている。これらのテーブルは、ポインタ52.54及
び56によって指定され、それらのポインタは各々段階
38で割当てられる。さらに、メツセージ・ルックアッ
プ・テーブル64の長さがメモリ中の位置58に格納さ
れている。段階40で、ポインタ52,54及び56と
、ルックアップ・テーブル長さ58と、メツセージ拳ト
ークン・ストリング・テーブル60と、メツセージ・シ
ンボル・テーブル62と、メツセージ・ルックアップ・
テーブル64がメツセージ・オブジェクト・ファイルを
形成するようにアセンブルされる。
が、メツセージ−トークン拳ストリング・テーブル60
.メツセージ・シンボル・テーブル62及びメツセージ
・ルックアップ・テーブル64を含むものとして図示さ
れている。これらのテーブルは、ポインタ52.54及
び56によって指定され、それらのポインタは各々段階
38で割当てられる。さらに、メツセージ・ルックアッ
プ・テーブル64の長さがメモリ中の位置58に格納さ
れている。段階40で、ポインタ52,54及び56と
、ルックアップ・テーブル長さ58と、メツセージ拳ト
ークン・ストリング・テーブル60と、メツセージ・シ
ンボル・テーブル62と、メツセージ・ルックアップ・
テーブル64がメツセージ・オブジェクト・ファイルを
形成するようにアセンブルされる。
第4図は、第2図のメツセージをフォーマット化する処
理をあらわすフローチャートである。第4図において、
メツセージ・サービス・ルーチン20は先ず、メツセー
ジ・コールを通じてメツセージ番号を受は取る。本願発
明の詳細な説明の後ろの箇所に示した表■が、プログラ
ムΦソース・コード中のメツセージ・コール・ステート
メントtあらbす。メツセージ・コール・ステートメン
トは、プログラムが、メツセージ・オブジェクト・ファ
イルの名前と、メツセージ番号と、変数ポインタと、フ
ォーマットされたメツセージが配置されるべきバッファ
と、コールした側のメツセージ・バッファの長さを与え
るべきことを要求する。
理をあらわすフローチャートである。第4図において、
メツセージ・サービス・ルーチン20は先ず、メツセー
ジ・コールを通じてメツセージ番号を受は取る。本願発
明の詳細な説明の後ろの箇所に示した表■が、プログラ
ムΦソース・コード中のメツセージ・コール・ステート
メントtあらbす。メツセージ・コール・ステートメン
トは、プログラムが、メツセージ・オブジェクト・ファ
イルの名前と、メツセージ番号と、変数ポインタと、フ
ォーマットされたメツセージが配置されるべきバッファ
と、コールした側のメツセージ・バッファの長さを与え
るべきことを要求する。
段階43では、メツセージ番号が、メツセージ・ルック
アップ・テーブル64中のメツセージ・トークン・スト
リング・ポインタにアクセスするために使用される。メ
ツセージ・サービス・ルーチン20(第2図)は次にメ
ツセージ・トークンQストリング・ポインタによって指
定されたトークンヲ用いてメツセージ・シンボル・テー
ブルのワードにアクセスする。段階48では、アクセス
されたワードと変数が実行プログラム16によって指定
されたバッファ中で順にアセンブルされる。
アップ・テーブル64中のメツセージ・トークン・スト
リング・ポインタにアクセスするために使用される。メ
ツセージ・サービス・ルーチン20(第2図)は次にメ
ツセージ・トークンQストリング・ポインタによって指
定されたトークンヲ用いてメツセージ・シンボル・テー
ブルのワードにアクセスする。段階48では、アクセス
されたワードと変数が実行プログラム16によって指定
されたバッファ中で順にアセンブルされる。
これらのワードは、トークン・ストリングの対応するト
ークンの命令によって指令された順序でアセンブルされ
る。バッファ中のアセンブルされたワードは次に、フォ
ーマットされたメツセージとして段階50で走行時間実
行プログラム16に送られる。
ークンの命令によって指令された順序でアセンブルされ
る。バッファ中のアセンブルされたワードは次に、フォ
ーマットされたメツセージとして段階50で走行時間実
行プログラム16に送られる。
第8図は、メツセージ・ルックアップ・テーブル64か
ら、テーブル60中のメツセージ・ストリングを介して
、メツセージ・シンボル・テーブル62中のワードにア
クセスする動作を図式的にあられしたものである。第8
図においては、メツセージ・ルックアップ・テーブル6
4中のメツセージ瞭ポインタ70が、メツセージ・トー
クン・ストリング・テーブル60中のトークン・ストリ
ングの最初のワードにアクセスするために使用される。
ら、テーブル60中のメツセージ・ストリングを介して
、メツセージ・シンボル・テーブル62中のワードにア
クセスする動作を図式的にあられしたものである。第8
図においては、メツセージ・ルックアップ・テーブル6
4中のメツセージ瞭ポインタ70が、メツセージ・トー
クン・ストリング・テーブル60中のトークン・ストリ
ングの最初のワードにアクセスするために使用される。
各トークンは、メツセージ拳シンボル・テーブル62中
のワードにアクセスするために使用される。
のワードにアクセスするために使用される。
第7図は、メツセージ・トークン・ストリング・テーブ
ル60中のトークン・ストリングの内容をあらわす。第
7図では、メツセージ・トークン鰺ポインタ70が、メ
ツセージ・トークン・ストリング・テーブル60のメツ
セージ書トークン・ストリング中の最初のワード・トー
クン72のアドレスを示す。各トークンは、メツセージ
中の対応するワードまたは変数の列に従って配列されて
いる。第7図において、その順序は、ワード・トークン
72から変数トークン76を経て終了トークン86へと
上昇してゆく。終了トークンは、トークン・ストリング
の終了を示す。
ル60中のトークン・ストリングの内容をあらわす。第
7図では、メツセージ・トークン鰺ポインタ70が、メ
ツセージ・トークン・ストリング・テーブル60のメツ
セージ書トークン・ストリング中の最初のワード・トー
クン72のアドレスを示す。各トークンは、メツセージ
中の対応するワードまたは変数の列に従って配列されて
いる。第7図において、その順序は、ワード・トークン
72から変数トークン76を経て終了トークン86へと
上昇してゆく。終了トークンは、トークン・ストリング
の終了を示す。
第9図は、表■のメツセージをあらわす。第9図は、第
8図に示されたトークン・テーブルに対応する参照番号
を含む。従って、トークン72は、ワード”DEVIC
E”とメツセージeシンボル・テーブル62(第5図)
を参照し、同様にトークン74はワード″NUMBER
”を参照する。
8図に示されたトークン・テーブルに対応する参照番号
を含む。従って、トークン72は、ワード”DEVIC
E”とメツセージeシンボル・テーブル62(第5図)
を参照し、同様にトークン74はワード″NUMBER
”を参照する。
トークン76は、表■で整数番号として定義された変数
トークンである。ワードIS″は、ワード・トークン7
8によってあられされる。トークン80は、表■でリン
グ変数として定義されている変数番号2である。このリ
ング変数は、′0N−L I NE”及び”0FF−L
INE″という2つの可能な値をもつ。これらのワード
は、第7図のトークン・ストリング中でトークン82及
び84によってあられされる。これらは、たとえリング
変数によシ参照されるとしても、ワード・トーとに注意
されたい。トークン80によってあられされるリング変
数の値は、走行時間実行中に、メツセージ・コール・ス
テートメント(表■)を通じて走行時間実行プログラム
16によって供給され、どちらのリングΦワード(すな
わち1または2)がアセンブルされたメツセージ中に供
給されるべきかを記述することになる。
トークンである。ワードIS″は、ワード・トークン7
8によってあられされる。トークン80は、表■でリン
グ変数として定義されている変数番号2である。このリ
ング変数は、′0N−L I NE”及び”0FF−L
INE″という2つの可能な値をもつ。これらのワード
は、第7図のトークン・ストリング中でトークン82及
び84によってあられされる。これらは、たとえリング
変数によシ参照されるとしても、ワード・トーとに注意
されたい。トークン80によってあられされるリング変
数の値は、走行時間実行中に、メツセージ・コール・ス
テートメント(表■)を通じて走行時間実行プログラム
16によって供給され、どちらのリングΦワード(すな
わち1または2)がアセンブルされたメツセージ中に供
給されるべきかを記述することになる。
ヘ ム −1−j−表 ■
ソースの例:
≠vars= I :
+vars= R% ”online offline
”+text=123%″’Device numb
er%1 is%2″;注意: 上述のソースは唯一
のメツセージをもつメツセージ・ソース・ファイルを含
むことになる。このソース・ファイルは、msganl
コマンドによってオブジェクト・メッセージ・ファ
イルにコンパイルされる。
”+text=123%″’Device numb
er%1 is%2″;注意: 上述のソースは唯一
のメツセージをもつメツセージ・ソース・ファイルを含
むことになる。このソース・ファイルは、msganl
コマンドによってオブジェクト・メッセージ・ファ
イルにコンパイルされる。
表 ■
出力のためのメツセージをフォーマットし得るためのS
OL00MSG”の概要 コール・ステートメント int sqlogmsg(filespec、msg
no%varptr。
OL00MSG”の概要 コール・ステートメント int sqlogmsg(filespec、msg
no%varptr。
buffer、 bufleng)
char filespec():unsigne
d msgno; tnt *varptr(); char *buffer(): int bufleng; 記述 この関数は、2次記憶から要求されたメツセージの記述
を入手し、sqlogmsgコールを介して渡された変
数をフォーマットして挿入し、フォーマットされたメツ
セージをそのコールに戻すものである。
d msgno; tnt *varptr(); char *buffer(): int bufleng; 記述 この関数は、2次記憶から要求されたメツセージの記述
を入手し、sqlogmsgコールを介して渡された変
数をフォーマットして挿入し、フォーマットされたメツ
セージをそのコールに戻すものである。
パラメータ
filespec−コールする側のメツセージ・オブジ
ェクト争ライブラリを含むファ イルの名称。もし現在ディレクト リ中にないなら、それはデバイス 及びパスを含むファイルの完全に 修飾された名前である。
ェクト争ライブラリを含むファ イルの名称。もし現在ディレクト リ中にないなら、それはデバイス 及びパスを含むファイルの完全に 修飾された名前である。
msgno −要求されたメツセージの番号。
varptr−変数を挿入するためのポインタのアレイ
へのポインタ。指定された 変数フォーマットは次のとおシで ある。
へのポインタ。指定された 変数フォーマットは次のとおシで ある。
・整数変数は2バイト整数である。
・リング変数は、選択すべきリン
グ・ワードを示すために、2バイ
ト整数である。
・ストリングは、2バイト長であ
りその後にストリング・データが
続く。
buffer−フォーマットされたメツセージが配置さ
れることになるコールした 側のバッファへのポインタ。
れることになるコールした 側のバッファへのポインタ。
buf leng−コールした側のメツセージ・バッフ
ァの長さをバイトであられした もの。
ァの長さをバイトであられした もの。
返される値
成功裡に完了すると、この関数の値は、フォーマットさ
れたメツセージの実際の長さを含むことになる。もしフ
ォーマットされたメツセージがコールした側のバッファ
よシ大きいなら、メツセージはコールした側のバッファ
の長さに短縮される。
れたメツセージの実際の長さを含むことになる。もしフ
ォーマットされたメツセージがコールした側のバッファ
よシ大きいなら、メツセージはコールした側のバッファ
の長さに短縮される。
フォーマットされたメツセージの全体の実際のサイズが
返される値として戻される。もしエラーが生じると、エ
ラーのリストからの否定的な返される値が戻される。
返される値として戻される。もしエラーが生じると、エ
ラーのリストからの否定的な返される値が戻される。
F、発明の詳細
な説明したように、この発明によれば、メツセージをオ
ブジェクト・ファイルとして効率的にコンピュータのメ
モリに記憶することを可能ならしめるとともに、特殊な
トークンによりメツセージのワードにアクセスを与える
方法が提供される。
ブジェクト・ファイルとして効率的にコンピュータのメ
モリに記憶することを可能ならしめるとともに、特殊な
トークンによりメツセージのワードにアクセスを与える
方法が提供される。
第1図は、メツセージ・ソース・ファイルを圧縮された
メツセージ・オブジェクト・ファイルにコンパイルする
動作を示すブロック図、第2図は、メツセージ・オブジ
ェクト・ファイルからのメツセージのフォーマット動作
を示すブロック図、 第3図は、メツセージ拳オブジェクト・ファイルの形成
またはコンパイルのフローチャート、第4図は、メツセ
ージ・オブジェクト・ファイルからのフォーマットを示
すフローチャート、第5図は、メツセージ・オブジェク
ト・ファイルの内容を示すブロック図、 第6図は、メツセージφシンボル書テーブルの内容を示
す図、 第7図は、メツセージ・トークン拳ストリングφテーブ
ルの内容を示す図、 第8図は、メツセージ書ルックアップ・テーブルト、メ
ツセージ・トークン・ストリングΦテーブルと、メツセ
ージ・シンボル・テーブルの間の相互関係を示す図、 第9図は、リング変数を含むメツセージをあらわす図で
ある。 Ifla人 インターナシEftし・ビジネス・マシ
ーンズ・コ〒ポレーション代理人 弁理士 山
本 仁 朗(外1名) FIG、 4 FIG、 4
メツセージ・オブジェクト・ファイルにコンパイルする
動作を示すブロック図、第2図は、メツセージ・オブジ
ェクト・ファイルからのメツセージのフォーマット動作
を示すブロック図、 第3図は、メツセージ拳オブジェクト・ファイルの形成
またはコンパイルのフローチャート、第4図は、メツセ
ージ・オブジェクト・ファイルからのフォーマットを示
すフローチャート、第5図は、メツセージ・オブジェク
ト・ファイルの内容を示すブロック図、 第6図は、メツセージφシンボル書テーブルの内容を示
す図、 第7図は、メツセージ・トークン拳ストリングφテーブ
ルの内容を示す図、 第8図は、メツセージ書ルックアップ・テーブルト、メ
ツセージ・トークン・ストリングΦテーブルと、メツセ
ージ・シンボル・テーブルの間の相互関係を示す図、 第9図は、リング変数を含むメツセージをあらわす図で
ある。 Ifla人 インターナシEftし・ビジネス・マシ
ーンズ・コ〒ポレーション代理人 弁理士 山
本 仁 朗(外1名) FIG、 4 FIG、 4
Claims (2)
- (1)各々が複数のテキスト・ワードを含む複数のメッ
セージを有するコンピュータ・プログラムにおいて、 (a)上記メッセージ・ワードに対応する固有のエント
リをもち、該エントリは上記メッセージ中の発生頻度に
より順序づけられているメッセージ・ワード・テーブル
として第1のファイル部分を形成する段階と、 (b)各メッセージのためのトークン・ストリングを含
むメッセージ・トークン・ストリング・テーブルであつ
て、該各トークン・ストリングは、各々が上記メッセー
ジ中の1つのワードをあらわす複数のトークンを含み、
該トークンは上記ストリング中で対応するメッセージ中
の対応するワードの位置によつて順序づけられ、該トー
クンは上記メッセージ・ワード・テーブル中の対応する
ワードの位置をあらわす値を有するようなメッセージ・
トークン・ストリング・テーブルとして第2のファイル
部分を形成する段階と、 (c)各メッセージのための固有の識別子と、対応する
ポインタとを含み、該ポインタは上記対応するメッセー
ジのためのトークン・ストリングのアドレスを表示する
メッセージ・ルックアップ・テーブルとして第3のファ
イル部分を形成する段階を有する、 コンピュータ・プログラムのためのメッセージ・ファイ
ル形成方法。 - (2)上記メッセージ・ルックアップ・テーブル・ポイ
ンタが、上記トークン・ストリングの最初のトークンの
アドレスを表示する特許請求の範囲第(1)項に記載の
方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US931109 | 1986-11-17 | ||
US06/931,109 US4949302A (en) | 1986-11-17 | 1986-11-17 | Message file formation for computer programs |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63131232A true JPS63131232A (ja) | 1988-06-03 |
Family
ID=25460238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62219313A Pending JPS63131232A (ja) | 1986-11-17 | 1987-09-03 | コンピユータ・プログラムのためのメツセージ・フアイル形成方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US4949302A (ja) |
EP (1) | EP0268069B1 (ja) |
JP (1) | JPS63131232A (ja) |
BR (1) | BR8706009A (ja) |
DE (1) | DE3788782T2 (ja) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5258910A (en) * | 1988-07-29 | 1993-11-02 | Sharp Kabushiki Kaisha | Text editor with memory for eliminating duplicate sentences |
US5155816A (en) * | 1989-02-10 | 1992-10-13 | Intel Corporation | Pipelined apparatus and method for controlled loading of floating point data in a microprocessor |
CA2051135C (en) * | 1991-09-11 | 1996-05-07 | Kim D. Letkeman | Compressed language dictionary |
US5689671A (en) * | 1991-11-27 | 1997-11-18 | Icl Systems Ab | System for reducing quantity of data transmitted to a user unit by transmitting only an identifier which points to pre-stored information in the user unit |
US5353024A (en) * | 1992-05-01 | 1994-10-04 | Intersecting Concepts, Inc. | Method for data compression having an improved encoding algorithm which utilizes a token stacking technique |
US5434776A (en) * | 1992-11-13 | 1995-07-18 | Microsoft Corporation | Method and system for creating multi-lingual computer programs by dynamically loading messages |
US5517635A (en) * | 1992-12-17 | 1996-05-14 | International Business Machines Corporation | System for designing an application program to be independent of I/O devices by utilizing application name, system name, and predetermined hardware specific parameters of data objects |
CA2138830A1 (en) * | 1994-03-03 | 1995-09-04 | Jamie Joanne Marschner | Real-time administration-translation arrangement |
WO1996032685A1 (en) | 1995-04-11 | 1996-10-17 | Kinetech, Inc. | Identifying data in a data processing system |
GB2305746B (en) * | 1995-09-27 | 2000-03-29 | Canon Res Ct Europe Ltd | Data compression apparatus |
US5802062A (en) * | 1996-06-19 | 1998-09-01 | At&T Corp | Preventing conflicts in distributed systems |
US6466900B1 (en) * | 1998-05-29 | 2002-10-15 | Citicorp Development Center, Inc. | Multi-language phrase editor and method thereof |
US7165020B2 (en) * | 1998-05-29 | 2007-01-16 | Citicorp Development Center, Inc. | Multi-language phrase editor and method thereof |
US5960382A (en) * | 1997-07-07 | 1999-09-28 | Lucent Technologies Inc. | Translation of an initially-unknown message |
US9037451B2 (en) * | 1998-09-25 | 2015-05-19 | Rpx Corporation | Systems and methods for multiple mode voice and data communications using intelligently bridged TDM and packet buses and methods for implementing language capabilities using the same |
US6192344B1 (en) * | 1998-12-16 | 2001-02-20 | Altigen Communications, Inc. | Messaging server language configuration method and apparatus |
GB2346706A (en) * | 1999-02-05 | 2000-08-16 | Univ Glasgow | Multiple core waveguide |
US6321190B1 (en) | 1999-06-28 | 2001-11-20 | Avaya Technologies Corp. | Infrastructure for developing application-independent language modules for language-independent applications |
US6292773B1 (en) | 1999-06-28 | 2001-09-18 | Avaya Technology Corp. | Application-independent language module for language-independent applications |
US6453462B1 (en) * | 1999-06-29 | 2002-09-17 | International Business Machines Corporation | Mock translation system, method, and program using multi-byte placeholder characters to test translatability of software that will display multi-byte languages |
US7089494B1 (en) * | 2000-07-07 | 2006-08-08 | American Megatrends, Inc. | Data structure, methods, and computer program products for storing text data strings used to display text information on a display terminal |
US20020198960A1 (en) * | 2001-05-30 | 2002-12-26 | Anne Robb | Method and apparatus for providing a common text messaging system within a software architecture |
US8185576B2 (en) * | 2006-03-14 | 2012-05-22 | Altnet, Inc. | Filter for a distributed network |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3670310A (en) * | 1970-09-16 | 1972-06-13 | Infodata Systems Inc | Method for information storage and retrieval |
US3717851A (en) * | 1971-03-03 | 1973-02-20 | Ibm | Processing of compacted data |
US4044347A (en) * | 1975-05-19 | 1977-08-23 | International Business Machines Corporation | Variable-length to fixed-length conversion of minimum-redundancy codes |
US4232375A (en) * | 1978-06-12 | 1980-11-04 | Ncr Corporation | Data compression system and apparatus |
US4484304A (en) * | 1979-02-02 | 1984-11-20 | International Business Machines Corporation | Transaction execution system having keyboard and message customization, improved key function versatility and message segmentation |
US4358824A (en) * | 1979-12-28 | 1982-11-09 | International Business Machines Corporation | Office correspondence storage and retrieval system |
US4386416A (en) * | 1980-06-02 | 1983-05-31 | Mostek Corporation | Data compression, encryption, and in-line transmission system |
US4365315A (en) * | 1980-09-08 | 1982-12-21 | Kearney & Trecker Corporation | System for multilingual communication of computer-specified aural or visual control messages in an operator-designated language |
US4355306A (en) * | 1981-01-30 | 1982-10-19 | International Business Machines Corporation | Dynamic stack data compression and decompression system |
US4403303A (en) * | 1981-05-15 | 1983-09-06 | Beehive International | Terminal configuration manager |
US4454576A (en) * | 1981-05-18 | 1984-06-12 | International Business Machines Corporation | Report preparation |
JPS57201958A (en) * | 1981-06-05 | 1982-12-10 | Hitachi Ltd | Device and method for interpretation between natural languages |
US4597057A (en) * | 1981-12-31 | 1986-06-24 | System Development Corporation | System for compressed storage of 8-bit ASCII bytes using coded strings of 4 bit nibbles |
US4481577A (en) * | 1982-03-25 | 1984-11-06 | At&T Bell Laboratories | Method of operating a computer system to provide customized responses |
US4595980A (en) * | 1983-07-27 | 1986-06-17 | International Business Machines Corp. | Interactive data processing system having concurrent multi-lingual inputs |
EP0160672A4 (en) * | 1983-10-19 | 1986-05-12 | Text Sciences Corp | METHOD AND DEVICE FOR COMPRESSING DATA. |
-
1986
- 1986-11-17 US US06/931,109 patent/US4949302A/en not_active Expired - Fee Related
-
1987
- 1987-09-03 JP JP62219313A patent/JPS63131232A/ja active Pending
- 1987-10-13 EP EP87114908A patent/EP0268069B1/en not_active Expired - Lifetime
- 1987-10-13 DE DE3788782T patent/DE3788782T2/de not_active Expired - Fee Related
- 1987-11-09 BR BR8706009A patent/BR8706009A/pt not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
EP0268069B1 (en) | 1994-01-12 |
EP0268069A2 (en) | 1988-05-25 |
BR8706009A (pt) | 1988-06-21 |
US4949302A (en) | 1990-08-14 |
DE3788782T2 (de) | 1994-06-23 |
EP0268069A3 (en) | 1992-01-08 |
DE3788782D1 (de) | 1994-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS63131232A (ja) | コンピユータ・プログラムのためのメツセージ・フアイル形成方法 | |
US6345243B1 (en) | System, method, and product for dynamically propagating translations in a translation-memory system | |
US6345244B1 (en) | System, method, and product for dynamically aligning translations in a translation-memory system | |
US5802539A (en) | Method and apparatus for managing text objects for providing text to be interpreted across computer operating systems using different human languages | |
US7188115B2 (en) | Processing fixed-format data in a unicode environment | |
JP4163870B2 (ja) | 構造化文書変換装置 | |
US4791558A (en) | System and method for generating an object module in a first format and then converting the first format into a format which is loadable into a selected computer | |
US8037199B2 (en) | Localization of resources used by applications in hand-held electronic devices and methods thereof | |
US5339434A (en) | Heterogeneous data translation system | |
US6457013B1 (en) | Data formating property modifiers | |
EP0413486A2 (en) | Message processing system | |
US8924837B2 (en) | Text file interface support in an object oriented application | |
EP0735466A2 (en) | Method and apparatus for displaying locations of errors detected inside software macro calls | |
JPH10326255A (ja) | 言語から独立したメッセージの操作方法 | |
US6785682B2 (en) | Data processing system, method and computer program product | |
JPS6170660A (ja) | 機械翻訳システムにおける多義表示・選択方法 | |
JP3476881B2 (ja) | 仕様書の生成装置 | |
TW561360B (en) | Method and system for case conversion | |
JPH0512034A (ja) | 機械で読取り可能な情報の翻訳を可能にする方法 | |
JPS6351292B2 (ja) | ||
Ting et al. | Systems Guide to Fig-FORTH | |
US6373409B1 (en) | Method and computer program product for implementing text conversion table compression | |
JP4098838B2 (ja) | 文書フォーマット変換方法 | |
EP0348563A1 (en) | A system and method for generating program object modules | |
EP0126123A1 (en) | Dynamic data base representation |