JPH01251230A - プログラム変換システム - Google Patents
プログラム変換システムInfo
- Publication number
- JPH01251230A JPH01251230A JP63079362A JP7936288A JPH01251230A JP H01251230 A JPH01251230 A JP H01251230A JP 63079362 A JP63079362 A JP 63079362A JP 7936288 A JP7936288 A JP 7936288A JP H01251230 A JPH01251230 A JP H01251230A
- Authority
- JP
- Japan
- Prior art keywords
- block
- source
- compaction
- line
- program
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明は、ソーステキストをコンパクションソース群に
変換するプログラム変換システムに関する。
変換するプログラム変換システムに関する。
(従来の技術)
ソーステキストをコンパクションソース群に変換するシ
ステムが種々提案されているが、従来のシステムは、例
えばリスト処理におけるように、ソーステキストのプロ
グラムを1行単位に、データであればワード単位に前後
のチエインで接続する方式が主流であった。
ステムが種々提案されているが、従来のシステムは、例
えばリスト処理におけるように、ソーステキストのプロ
グラムを1行単位に、データであればワード単位に前後
のチエインで接続する方式が主流であった。
(発明が解決しようとする課8)
しかしながら従来のシステムによると、行情報とコンパ
クションソースのメモリ空間に無駄が生じ、ポインタの
数が多くなるという問題がある。
クションソースのメモリ空間に無駄が生じ、ポインタの
数が多くなるという問題がある。
本発明はこのような事情によりなされたもので、行情報
とコンパクションソースを無駄無く格納することができ
、ポインタの数も少なくなるプログラム変換システムの
提供を目的としている。
とコンパクションソースを無駄無く格納することができ
、ポインタの数も少なくなるプログラム変換システムの
提供を目的としている。
[発明の構成コ
(課題を解決するための手段)
本発明のプログラム変換システムはこの目的を実現する
べく、ソーステキストから1行分のプラグラムを読込み
、1行単位でコンパクシジンソース群に変換する手段と
、前記コンパクションソースを保持する複数のブロック
のそれぞれに先頭から順に前記変換された1行分のプロ
グラムの行情報を格納するとともに末尾から順にその1
行分のコンパクションソースを格納する手段と、前記ブ
ロックのいずれかが一杯になったとき、その一杯になっ
たブロック内に格納された行数と前のブロックを指す前
方リンク情報および後のブロックを指す後方リンク情報
を格納する手段と、前記ソーステキストを全て読み終え
たとき、最初のブロックの前方リンク情報は最後のブロ
ックを、最後のブロックの後方リンク情報は最初のブロ
ックを指すように制御する手段とを備えている。
べく、ソーステキストから1行分のプラグラムを読込み
、1行単位でコンパクシジンソース群に変換する手段と
、前記コンパクションソースを保持する複数のブロック
のそれぞれに先頭から順に前記変換された1行分のプロ
グラムの行情報を格納するとともに末尾から順にその1
行分のコンパクションソースを格納する手段と、前記ブ
ロックのいずれかが一杯になったとき、その一杯になっ
たブロック内に格納された行数と前のブロックを指す前
方リンク情報および後のブロックを指す後方リンク情報
を格納する手段と、前記ソーステキストを全て読み終え
たとき、最初のブロックの前方リンク情報は最後のブロ
ックを、最後のブロックの後方リンク情報は最初のブロ
ックを指すように制御する手段とを備えている。
(作 用)
本発明のプログラム変換システムではブロック、すなわ
ちある程度まとまった単位にプログラムを集め、そのブ
ロック間でリンクを行なうことにより、少ないポインタ
で2重リンク構造を実現する。
ちある程度まとまった単位にプログラムを集め、そのブ
ロック間でリンクを行なうことにより、少ないポインタ
で2重リンク構造を実現する。
また決まった大きさのブロックにプログラムを格納する
ことにより、メモリ空間に無駄が生じない。
ことにより、メモリ空間に無駄が生じない。
(実施例)
以下、本発明の実施例の詳細を図面に基づいて説明する
。
。
第1図は本発明の一実施例の構成を示す図である。
同図において1はソーステキストが格納されているファ
イル、2はソースプログラムの圧縮を行なうプログラム
、3は二重リンク構造を持つコンパクションソースを格
納するファイルである。
イル、2はソースプログラムの圧縮を行なうプログラム
、3は二重リンク構造を持つコンパクションソースを格
納するファイルである。
そして本実施例では、1文字が1バイトから表現される
と仮定する。また漢字1文字は2バイトからなるものと
し、内部的には2文字として扱い、1バイトごとに別々
に処理されるものと仮定する。
と仮定する。また漢字1文字は2バイトからなるものと
し、内部的には2文字として扱い、1バイトごとに別々
に処理されるものと仮定する。
数字は符号付きの2進数で表現されるものと仮定する。
したがって1バイトでは−128〜+127までの表現
が可能である。
が可能である。
さらにブロックを格納するファイル編成は番号の指定に
よって各ブロックのアクセスが可能な編成にされている
と仮定する。
よって各ブロックのアクセスが可能な編成にされている
と仮定する。
本実施例のシステムは、ソーステキストを入力し、第2
図に示す形式の複数のブロックに変換後、それを出力す
る機能を有する。
図に示す形式の複数のブロックに変換後、それを出力す
る機能を有する。
第3図に示すように出力される各ブロックは、前方リン
ク(フロントリンク)および後方リンク(バックリンク
)の両方向のブロックへのポインタを有している。そし
て1番最初のブロックの前方リンクは1番最後のブロッ
ク、1番最後のブロックの後方リンクは1番前のブロッ
クを指す。
ク(フロントリンク)および後方リンク(バックリンク
)の両方向のブロックへのポインタを有している。そし
て1番最初のブロックの前方リンクは1番最後のブロッ
ク、1番最後のブロックの後方リンクは1番前のブロッ
クを指す。
一般に、ソースプログラムはインデンテーションおよび
プログラム自体の見易さのために空白等が多く存在する
ことが多い。そこで第4図に示すように、入力となるソ
ーステキストは1行ごとに3Fif[f (A、 B、
C)の形式にコンパクションを行う。
プログラム自体の見易さのために空白等が多く存在する
ことが多い。そこで第4図に示すように、入力となるソ
ーステキストは1行ごとに3Fif[f (A、 B、
C)の形式にコンパクションを行う。
人形式は先頭1バイトが16進で“FF”、次の1バイ
トが長さを表わす2進数の計2バイトからなる。
トが長さを表わす2進数の計2バイトからなる。
B形式は先頭1バイトが16進で“FE“、次の1バイ
トが長さを表わす2進数、その次の1バイトが文字を表
わす計3バイトからなる。
トが長さを表わす2進数、その次の1バイトが文字を表
わす計3バイトからなる。
C形式は先頭1バイトが長さを表わす2進数、次がその
長さ分の文字列からなる。
長さ分の文字列からなる。
そしてソーステキストの元のイメージを保つために以下
のような規則でコンパクションを行なう。
のような規則でコンパクションを行なう。
■空白が2個以上続いた場合は、人形式にする。
■空白以外で同じ文字が3個以上続いた場合は、B形式
にする。
にする。
■その他の場合には、C形式にする。
出力となる1つのブロックの構造は、第2図に示したよ
うに固定情報と可変情報とに分けられる。
うに固定情報と可変情報とに分けられる。
固定情報は前方リンク、後方リンクおよびそのブロック
に格納されている行数が各2バイトずっの計6バイトか
らなり、固定的にブロックの頭部にとられる。
に格納されている行数が各2バイトずっの計6バイトか
らなり、固定的にブロックの頭部にとられる。
可変情報は行情報部とコンパクションソース部との2つ
に分けられる。
に分けられる。
行情報部は、そのブロックに格納された行数骨(固定情
報部の格納行数と等しい)の行情報が存在する。1つの
行情報はその行を表わす型および長さが各1バイト、そ
のブロック内の位置(先頭を1とした相対位置)および
ソーステキスト全体の順番を示す文番号が各2バイトの
計6バイトからなる。
報部の格納行数と等しい)の行情報が存在する。1つの
行情報はその行を表わす型および長さが各1バイト、そ
のブロック内の位置(先頭を1とした相対位置)および
ソーステキスト全体の順番を示す文番号が各2バイトの
計6バイトからなる。
コンパクションソース情報部には、各行情報に対して(
フェステキストの最後を示す型を持つものを除き)、第
3図に示した形式のコンパクションソース(1行に対し
複数個となる)が格納されている。
フェステキストの最後を示す型を持つものを除き)、第
3図に示した形式のコンパクションソース(1行に対し
複数個となる)が格納されている。
最後にブロック内に無駄無く各データを格納するために
、M5図に示すように行情報は上(先頭)から下(末尾
)方向へ、コンパクションソースは1行を表す単位ごと
に下(末尾)から上(先頭)方向に格納してゆき、これ
を両方のデータが共に格納不能になるまで行う。そのブ
ロック(ブロックAとする)に格納できなかった両方の
データは、次のブロック(ブロックBとする)に格納す
る。
、M5図に示すように行情報は上(先頭)から下(末尾
)方向へ、コンパクションソースは1行を表す単位ごと
に下(末尾)から上(先頭)方向に格納してゆき、これ
を両方のデータが共に格納不能になるまで行う。そのブ
ロック(ブロックAとする)に格納できなかった両方の
データは、次のブロック(ブロックBとする)に格納す
る。
また、このときにブロックAの後方リンクはブロックB
を指し、ブロックBの前方リンクはブロックAを指すよ
うにブロック間の結合を行なう。
を指し、ブロックBの前方リンクはブロックAを指すよ
うにブロック間の結合を行なう。
なお、プログラムが持つ附随的なデータ(ソースの名前
、作成日付、更新日付など)は、他の固定的なブロック
が持つものとする。すなわちソーステキストを他のユー
ティリティ等で扱いよくするために、物理的に変換する
機能をもつ。
、作成日付、更新日付など)は、他の固定的なブロック
が持つものとする。すなわちソーステキストを他のユー
ティリティ等で扱いよくするために、物理的に変換する
機能をもつ。
かくして本実施例によれば、ブロック単位にデータを集
め、そのブロック間でリンクを行なうので、少ないポイ
ンタで二重リンク構造を実現することができる。
め、そのブロック間でリンクを行なうので、少ないポイ
ンタで二重リンク構造を実現することができる。
また決った大きさのブロックにデータを格納するので、
メモリ空間に無駄が生じない。
メモリ空間に無駄が生じない。
さらにソースプログラムの先頭から末尾をアクセスする
、または末尾から先頭をアクセスする等制御が極めて容
易である。
、または末尾から先頭をアクセスする等制御が極めて容
易である。
なお本実施例の機能をコンパイラに組込んで、変換され
たソースプログラムと出力されたオブジェクトとを同時
に出力するようにすれば、オブジェクトと対応するソー
スプログラムが必ず存在することになるので、デバッグ
処理に使用することができるようになる。
たソースプログラムと出力されたオブジェクトとを同時
に出力するようにすれば、オブジェクトと対応するソー
スプログラムが必ず存在することになるので、デバッグ
処理に使用することができるようになる。
[発明の効果]
以上説明したように本発明のプログラム変換システムは
、ブロック単位にデータを集め、そのブロック間でリン
クを行なうので、行情報とコンパクションソースを無駄
無く格納することができ、ポインタの数も少なくなる。
、ブロック単位にデータを集め、そのブロック間でリン
クを行なうので、行情報とコンパクションソースを無駄
無く格納することができ、ポインタの数も少なくなる。
第1図は本発明の一実施例の構成を示すブロック図、第
2図は同実施例におけるソーステキストのブロックを説
明する図、第3図はソーステキストのコンパクションを
説明する図、第4図はソーステキストのブロック間のリ
ンクを説明する図、第5図はブロック内への行情報およ
びコンパクションソースの格納方法を示す図である。 1・・・ソーステキストが格納されているファイル、
、2・・・ソースプログラムの圧縮を行なうプログラム
、3・・・二重リンク構造を持つコンパクションソース
を格納するファイル。 出願人 株式会社 東芝 代理人 弁理士 須 山 佐 − ゛ノー人テキスト
ニtりり騰迅を特フコシRクシ1υリー人 第1図 A π仄 「テnLバイト0墾白 B 管法 [コ匡上二二]ζ=] 1 ノぐイ
ト史咎Cム゛’L+XSイトC4氏 匡二エラ和]
Lノぐイト0文客イメージ(L<127)第3図 第4図
2図は同実施例におけるソーステキストのブロックを説
明する図、第3図はソーステキストのコンパクションを
説明する図、第4図はソーステキストのブロック間のリ
ンクを説明する図、第5図はブロック内への行情報およ
びコンパクションソースの格納方法を示す図である。 1・・・ソーステキストが格納されているファイル、
、2・・・ソースプログラムの圧縮を行なうプログラム
、3・・・二重リンク構造を持つコンパクションソース
を格納するファイル。 出願人 株式会社 東芝 代理人 弁理士 須 山 佐 − ゛ノー人テキスト
ニtりり騰迅を特フコシRクシ1υリー人 第1図 A π仄 「テnLバイト0墾白 B 管法 [コ匡上二二]ζ=] 1 ノぐイ
ト史咎Cム゛’L+XSイトC4氏 匡二エラ和]
Lノぐイト0文客イメージ(L<127)第3図 第4図
Claims (1)
- (1)ソーステキストから1行分のプラグラムを読込み
、1行単位でコンパクションソース群に変換する手段と
、前記コンパクションソースを保持する複数のブロック
のそれぞれに先頭から順に前記変換された1行分のプロ
グラムの行情報を格納するとともに末尾から順にその1
行分のコンパクションソースを格納する手段と、前記ブ
ロックのいずれかが一杯になったとき、その一杯になっ
たブロック内に格納された行数と前のブロックを指す前
方リンク情報および後のブロックを指す後方リンク情報
を格納する手段と、前記ソーステキストを全て読み終え
たとき、最初のブロックの前方リンク情報は最後のブロ
ックを、最後のブロックの後方リンク情報は最初のブロ
ックを指すように制御する手段とを備えてなることを特
徴とするプログラム変換システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63079362A JPH01251230A (ja) | 1988-03-31 | 1988-03-31 | プログラム変換システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63079362A JPH01251230A (ja) | 1988-03-31 | 1988-03-31 | プログラム変換システム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH01251230A true JPH01251230A (ja) | 1989-10-06 |
Family
ID=13687774
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63079362A Pending JPH01251230A (ja) | 1988-03-31 | 1988-03-31 | プログラム変換システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH01251230A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1991016685A1 (fr) * | 1990-04-17 | 1991-10-31 | Seiko Epson Corporation | Dispositif de production d'image |
| US6865658B2 (en) | 2000-12-07 | 2005-03-08 | Sharp Kabushiki Kaisha | Nonvolatile data management system using data segments and link information |
| JP2010182086A (ja) * | 2009-02-05 | 2010-08-19 | Fujitsu Ltd | 伝送装置及びリンク切れ修復方法 |
-
1988
- 1988-03-31 JP JP63079362A patent/JPH01251230A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1991016685A1 (fr) * | 1990-04-17 | 1991-10-31 | Seiko Epson Corporation | Dispositif de production d'image |
| US6865658B2 (en) | 2000-12-07 | 2005-03-08 | Sharp Kabushiki Kaisha | Nonvolatile data management system using data segments and link information |
| JP2010182086A (ja) * | 2009-02-05 | 2010-08-19 | Fujitsu Ltd | 伝送装置及びリンク切れ修復方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0186007B1 (en) | Apparatus, method, and structure for translating a document having one structure into a document having another structure | |
| JPS6049332B2 (ja) | マイクロプログラム制御方式 | |
| JPH01251230A (ja) | プログラム変換システム | |
| JP4486754B2 (ja) | Vliwプロセッサの圧縮されたプログラムを生成して実行する方法 | |
| JP2002533804A5 (ja) | ||
| EP1686588A3 (en) | Data processing method and storage medium, and program for causing computer to execute the data processing method | |
| JPS6022236A (ja) | メツセ−ジ出力方式 | |
| KR20240060988A (ko) | 인공지능학습용 타임시리즈데이터 전처리방법 | |
| JPS63121940A (ja) | フアイル制御システム | |
| JPH0497487A (ja) | 文字列データ格納方式 | |
| JPH0319086A (ja) | 状態遷移表変換装置 | |
| JPH01233614A (ja) | 帳票印字方式 | |
| JPS62107349A (ja) | フアイル変換方式 | |
| JPH0298731A (ja) | プログラムコード生成装置 | |
| JPH02297180A (ja) | 文書編集方式 | |
| JPH041396B2 (ja) | ||
| JPS6359091A (ja) | 蓄積プログラム制御方式電話交換システムにおけるメモリ割付け情報出力方式 | |
| JPH05127920A (ja) | 主記憶アクセス最適化処理方法 | |
| JPH02201551A (ja) | トレース情報格納方式 | |
| JPH0225944A (ja) | データ変換装置 | |
| JPH01155482A (ja) | 文字読取装置 | |
| JPH0340021A (ja) | 文書接続印刷処理方式 | |
| JPH0556536B2 (ja) | ||
| JPH04192052A (ja) | ファイル同報転送装置 | |
| JPS6339061B2 (ja) |