JPS63208126A - リスト処理装置 - Google Patents
リスト処理装置Info
- Publication number
- JPS63208126A JPS63208126A JP4030787A JP4030787A JPS63208126A JP S63208126 A JPS63208126 A JP S63208126A JP 4030787 A JP4030787 A JP 4030787A JP 4030787 A JP4030787 A JP 4030787A JP S63208126 A JPS63208126 A JP S63208126A
- Authority
- JP
- Japan
- Prior art keywords
- cell
- data
- section
- cdr
- list
- 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
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は2進木リスト処理装置に係り、特にリストで表
されるデータを効率良くアクセスできるリスト処理装置
に関する。
されるデータを効率良くアクセスできるリスト処理装置
に関する。
近年、計算機による知識処理が盛んになってきている。
知識などのデータは記号のまま扱うことが望ましく、記
号処理向き言語LISPが普及し始めている。LISP
はデータやプログラムを2進木リストで表すことを特徴
としている。
号処理向き言語LISPが普及し始めている。LISP
はデータやプログラムを2進木リストで表すことを特徴
としている。
第2図(a)に2進本リストの例を示す。計算機上では
このようなリストを左ポインタ (CARと呼ばれる)
及び右ポインタ(CDRと呼ばれる)から成るセルを使
って表している(第2図(b)参照)。ここでA、B、
Cはアトムと呼ばれるデータである。また、niQはリ
ストの終端を表す。
このようなリストを左ポインタ (CARと呼ばれる)
及び右ポインタ(CDRと呼ばれる)から成るセルを使
って表している(第2図(b)参照)。ここでA、B、
Cはアトムと呼ばれるデータである。また、niQはリ
ストの終端を表す。
LISPにおいては、このようなセルのCAR部やCD
R部をたどることによってデータにアクセスすることが
基本的な処理になる。
R部をたどることによってデータにアクセスすることが
基本的な処理になる。
ところで、CAR部、CDR部はポインタ、すなわちア
ドレスであり、そのデータ長は計算機の基本語長とほぼ
等しい。従って、1つのセルは2語以上で表されるのが
一般的である。
ドレスであり、そのデータ長は計算機の基本語長とほぼ
等しい。従って、1つのセルは2語以上で表されるのが
一般的である。
リストを高速にアクセスするために、特開昭5g−30
51号公報に記載のように、CAR部またはCDR部に
アクセスした場合、他方も連続してアクセスを行うこと
が考えられた。これによりリストをたどる際に次に必要
となるデータを自動的に得られるようになった・ 〔発明が解決しようとする問題点〕 しかし、上記従来技術では1つのセルの読み込みのため
に主記憶装置には2回の読み出し命令が発せられていた
。また、セルの書き込みに関しては高速化は考慮されて
いなかった。
51号公報に記載のように、CAR部またはCDR部に
アクセスした場合、他方も連続してアクセスを行うこと
が考えられた。これによりリストをたどる際に次に必要
となるデータを自動的に得られるようになった・ 〔発明が解決しようとする問題点〕 しかし、上記従来技術では1つのセルの読み込みのため
に主記憶装置には2回の読み出し命令が発せられていた
。また、セルの書き込みに関しては高速化は考慮されて
いなかった。
本発明の目的はリストアクセスを上記従来技術よりも効
率化し、またセルの書き込みに関しても効率化を図るこ
とにある。
率化し、またセルの書き込みに関しても効率化を図るこ
とにある。
上記目的は、リスト処理装置内にCAR部CDR部を同
時に保持する手段を設け、セルのCAR部またはCDR
部を読み込む際に、該セル全体を読み出し、該保持手段
に格納し、また、セルを新たに設けた時にはCAR部及
びCDR部にデータを書き込まなければならないが、そ
の際には、該保持手段に格納しであるデータを一度に書
き出すことで達成される。
時に保持する手段を設け、セルのCAR部またはCDR
部を読み込む際に、該セル全体を読み出し、該保持手段
に格納し、また、セルを新たに設けた時にはCAR部及
びCDR部にデータを書き込まなければならないが、そ
の際には、該保持手段に格納しであるデータを一度に書
き出すことで達成される。
CAR部CDR部保持手段は制御部からの指令によって
主記憶装置から読み出されたセルの内容を保持している
ので、次にリストをたどる際に必要となるデータが得ら
れたことになる。また、セルにデータを書き込む際には
、保持手段の内容を制御部からの指令によって一度に主
記憶装置に書き出すことにより1回の書き込み動作でセ
ルへの書き込みが完了したことになる。
主記憶装置から読み出されたセルの内容を保持している
ので、次にリストをたどる際に必要となるデータが得ら
れたことになる。また、セルにデータを書き込む際には
、保持手段の内容を制御部からの指令によって一度に主
記憶装置に書き出すことにより1回の書き込み動作でセ
ルへの書き込みが完了したことになる。
以下、本発明の一実施例を第1図〜第5図により説明す
る。
る。
第1図は、本発明の一実施例を示すリスト処理装置の構
成を示すブロック図である。該処理装置10はCAR部
CDR部保持手段(CCR) 101 。
成を示すブロック図である。該処理装置10はCAR部
CDR部保持手段(CCR) 101 。
CCRIOlを含む複数のレジスタから成るレジスタフ
ァイル(RF)102.演算部(ALU)103.メモ
リアドレスレジスタ(MAR)104. リードデー
タレジスタ(RDR)105.ライトデータレジスタ(
WDR) 106 、制御部(CTR)107. CT
R107から主記憶装置(MM)11への制御信号線1
08.及びバス109,110を主な構成要素とする。
ァイル(RF)102.演算部(ALU)103.メモ
リアドレスレジスタ(MAR)104. リードデー
タレジスタ(RDR)105.ライトデータレジスタ(
WDR) 106 、制御部(CTR)107. CT
R107から主記憶装置(MM)11への制御信号線1
08.及びバス109,110を主な構成要素とする。
CCRIOIはMMIIから読み出したセルの内容を格
納する。RF102に格納されたデータはバス109を
通してALU103で処理されるか、またはバス110
を通しテMAR104やWDR106ニセツトされる。
納する。RF102に格納されたデータはバス109を
通してALU103で処理されるか、またはバス110
を通しテMAR104やWDR106ニセツトされる。
MAR104にセットされたデータはメモリアクセスの
ためのアドレスとしてMMIIに送出される。MMII
から読み出されたデータはRDR105にセル1へされ
、その後バス109に送出される。
ためのアドレスとしてMMIIに送出される。MMII
から読み出されたデータはRDR105にセル1へされ
、その後バス109に送出される。
wdr106にセットされたデータは書き込みデータと
してMMIIに送出される。CTR107は処理装置1
0全体を制御する。MMIIへのアクセスに関してはM
AR,104の内容をアドレスとして送出するとともに
制御信号線108を通して読み出し書き込みの選択、デ
ータ長の指定等の制御情報を送出する。MMIIは該制
御情報に従い、MAR104で指定されたアドレスのデ
ータを、読み出しの場合はRDR105にセットし、書
き込みの場合はIdDR106の内容をMMII内に保
持する。
してMMIIに送出される。CTR107は処理装置1
0全体を制御する。MMIIへのアクセスに関してはM
AR,104の内容をアドレスとして送出するとともに
制御信号線108を通して読み出し書き込みの選択、デ
ータ長の指定等の制御情報を送出する。MMIIは該制
御情報に従い、MAR104で指定されたアドレスのデ
ータを、読み出しの場合はRDR105にセットし、書
き込みの場合はIdDR106の内容をMMII内に保
持する。
本実施例では、処理装置10の基本語長を4バイトとす
る。第3図は本実施例におけるセルの例である。CAR
部、CDR部をそれぞれ4バイトで表し、1つのセルは
MMII上の連続した9バイトの領域に格納される。第
4図は第2図のリストを本実施例におけるセルの形式で
表した例である。CDR部は次のセルの先頭のアドレス
を保持している。CAR部はアトム領域を指している。
る。第3図は本実施例におけるセルの例である。CAR
部、CDR部をそれぞれ4バイトで表し、1つのセルは
MMII上の連続した9バイトの領域に格納される。第
4図は第2図のリストを本実施例におけるセルの形式で
表した例である。CDR部は次のセルの先頭のアドレス
を保持している。CAR部はアトム領域を指している。
次に、本発明の具体例を実施例により説明する。
RF102内のレジスタが第4図のリストの先頭すなわ
ち(1000)ze番地を保持していたとする。次に該
レジスタの指すセルのCAR部すなわち(1004)1
8番地の内容を読み込む処理を行う。CTR107は該
レジスタの内容をバス110を通してMAR104にセ
ットするとともに制御信号線108によって読み出し処
理を行うことと読み出すデータの長さはセルの大きさ、
すなわち8バイトであることをM M l 1に送出す
る。MMIIはMAR104で示されたアドレスの内容
を読み出しRDR105にセットする。RDR105に
セットされたデータはバス109を通してCCRIOI
に格納される。これによりCCR101には(1000
)1eのセルのCAR部及びCDR部が読み込まれたこ
とになる。読み込んだCAR部により処理が続行される
。
ち(1000)ze番地を保持していたとする。次に該
レジスタの指すセルのCAR部すなわち(1004)1
8番地の内容を読み込む処理を行う。CTR107は該
レジスタの内容をバス110を通してMAR104にセ
ットするとともに制御信号線108によって読み出し処
理を行うことと読み出すデータの長さはセルの大きさ、
すなわち8バイトであることをM M l 1に送出す
る。MMIIはMAR104で示されたアドレスの内容
を読み出しRDR105にセットする。RDR105に
セットされたデータはバス109を通してCCRIOI
に格納される。これによりCCR101には(1000
)1eのセルのCAR部及びCDR部が読み込まれたこ
とになる。読み込んだCAR部により処理が続行される
。
次に同じセルのCDR部を読み込もうとする際には、既
にCCRIOIのCRD部に該セルのCDR部は読み込
まれているので新たにMMIIから読み出しを行う必要
はない。
にCCRIOIのCRD部に該セルのCDR部は読み込
まれているので新たにMMIIから読み出しを行う必要
はない。
セルの書き込み処理について示す。新しいセルの生成は
、セルのための領域を確保し、確保した領域のCAR部
及びCDR部にデータを書き込むことによってなされる
。第4図のリストの先頭に新しいアトムを挿入する処理
を第5図に従って示す。新しいセルの領域が(2000
)1e番地から8バイト確保されたとする。次に0CR
IOIのCAR部に新しいアトムへのポインタ、CDR
部に第4図のリストの先頭へのポインタすなわち(10
00)1e番地を格納する。次にCCR101は新しい
セルのアドレス(20oO)1eヲMAR104ニセッ
トスルトトモニCCR101の内容をバス110を通し
てIdDR106ににセットする。CTR107は制御
信号線108によって書き込み処理を行うことと書き込
むデータの長さはセルの大きさ、すなわち8バイトであ
ることをMMIIに送出する。MMIIはMAR104
で示されたアドレスに1dDR105の内容を書き込む
。これによりCCRIOIの内容がMMIIに書き込ま
れることになる。
、セルのための領域を確保し、確保した領域のCAR部
及びCDR部にデータを書き込むことによってなされる
。第4図のリストの先頭に新しいアトムを挿入する処理
を第5図に従って示す。新しいセルの領域が(2000
)1e番地から8バイト確保されたとする。次に0CR
IOIのCAR部に新しいアトムへのポインタ、CDR
部に第4図のリストの先頭へのポインタすなわち(10
00)1e番地を格納する。次にCCR101は新しい
セルのアドレス(20oO)1eヲMAR104ニセッ
トスルトトモニCCR101の内容をバス110を通し
てIdDR106ににセットする。CTR107は制御
信号線108によって書き込み処理を行うことと書き込
むデータの長さはセルの大きさ、すなわち8バイトであ
ることをMMIIに送出する。MMIIはMAR104
で示されたアドレスに1dDR105の内容を書き込む
。これによりCCRIOIの内容がMMIIに書き込ま
れることになる。
以上の具体例により、CCRIOIを使ってセルの読み
出し、書き込みが1回の操作で実行できることがわかる
。
出し、書き込みが1回の操作で実行できることがわかる
。
本発明によれば、従来2回読み出し、書き込みの操作を
しなければならなかったセルのアクセスを1回の操作で
行うことができるのでリスト処理が効率良く行える。
しなければならなかったセルのアクセスを1回の操作で
行うことができるのでリスト処理が効率良く行える。
第1図は本発明の一実施例を示すリスト処理装置の内部
構成のブロック図、第2図は本発明で用いられるリスト
の説明図、第3図は本発明の一実施例で用いられるリス
トセルの例を示す説明図、第4図及び第5図は本発明の
一実施例で用いられるリストの例を示す説明図である。 11・・主記憶装置、101・・・CAR部CDR部し
第 /I!! $ 2 図 (b) A 8 0 ←クバイトーー十 茎 タ 図 メ 5 図
構成のブロック図、第2図は本発明で用いられるリスト
の説明図、第3図は本発明の一実施例で用いられるリス
トセルの例を示す説明図、第4図及び第5図は本発明の
一実施例で用いられるリストの例を示す説明図である。 11・・主記憶装置、101・・・CAR部CDR部し
第 /I!! $ 2 図 (b) A 8 0 ←クバイトーー十 茎 タ 図 メ 5 図
Claims (1)
- 1、主記憶装置上で2進木リストを構成するCAR部、
CDR部の2つのポインタから成るセルを該主記憶装置
から読み込みまたは書き込みながら処理を進めていくリ
スト処理装置であつて、該セルの大きさが該処理装置の
基本語長よりも大きい場合、CAR部及びCDR部を一
度に保持できる手段を備え、該セルのCAR部またはC
DR部を該主記憶装置から読み込む際に該処理装置の制
御部からの制御信号により他方のポインタも同時に読み
込み、該保持手段に格納することを特徴とするリスト処
理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4030787A JPS63208126A (ja) | 1987-02-25 | 1987-02-25 | リスト処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4030787A JPS63208126A (ja) | 1987-02-25 | 1987-02-25 | リスト処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS63208126A true JPS63208126A (ja) | 1988-08-29 |
Family
ID=12576958
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4030787A Pending JPS63208126A (ja) | 1987-02-25 | 1987-02-25 | リスト処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS63208126A (ja) |
-
1987
- 1987-02-25 JP JP4030787A patent/JPS63208126A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS59197946A (ja) | メモリ装置 | |
| JPS6037931B2 (ja) | リスト処理方式 | |
| JPH05197596A (ja) | トレーサ | |
| SU769619A1 (ru) | Устройство дл формировани адресных сигналов | |
| JPS6225346A (ja) | 電子ジヤ−ナルフアイル構成方式 | |
| JP2721377B2 (ja) | Basicプログラム圧縮方法 | |
| JP2806535B2 (ja) | マイクロコンピュータ開発支援装置 | |
| JPH0724030B2 (ja) | デバック装置 | |
| JP2536651B2 (ja) | 例外アドレスバッファ管理方式 | |
| JPS61280167A (ja) | 画像メモリ制御装置 | |
| JPS6142076A (ja) | ベクトルマスク情報制御装置 | |
| JPH05324731A (ja) | データの検索処理方式 | |
| JPS6061851A (ja) | 入出力処理装置 | |
| JPS61157955A (ja) | タグ制御方式 | |
| JPS6272061A (ja) | 文書作成処理における辞書管理方式 | |
| JPS62134718A (ja) | デ−タアクセス制御方式 | |
| JPS6014335A (ja) | 情報処理装置 | |
| JPS6350731B2 (ja) | ||
| JPH01196639A (ja) | 情報処理装置 | |
| JPH0667982A (ja) | アドレス変換方式 | |
| JPH01255924A (ja) | ダイレクトメモリアクセス制御装置 | |
| JPH04239346A (ja) | 属性付データファイル装置 | |
| JPS5922150A (ja) | メモリ制御方式 | |
| JPS623294A (ja) | ビツトマツプム−バ− | |
| JP2000276374A (ja) | インストラクションアドレストレーサ回路 |