INDEX SYSTEM

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

专利名称:INDEX SYSTEM 申请号:JP7715073
申请日:19730710
公开号:JPS4953738A
公开日:
19740524
专利内容由知识产权出版社提供
摘要:1373985 Information retrieval INTERNATIONAL BUSINESS MACHINES CORP 10 Aug 1972 37262/72 Heading G4A An index system in which addresses are identified by binary key words stored at the terminal vertices of a notional binary tree includes an associative index store 10 (Fig. 5), each record location of which represents a vertex, locations corresponding to non-terminal vertices containing data pointing to the next vertex in the tree and data indicating which bit of the key word should be examined. In the embodiment described a terminal address is found by examining bits of the key word in turn and moving on to the next right-hand or left-hand vertex in accordance with whether the examined bit is an "1" or a "0". The system also includes an associative key store 20, mask store 30 and translation store 40. Index store.-This comprises registers having a plurality of cells, each cell consisting of two bi-stable transistor circuits, data relating to right-hand vertices being stored in one bi-stable circuit and data relating to left-hand vertices being stored in the other. Each register is divided into fields F, A. B, C, D and E, where F is a one bit register indicating whether or not the vertex represented by the contents of the register is a terminal vertex, A holds the vertex number, B indicates whether the contents represent a right or left-hand vertex, if F is "0", C and D indicate respectively the number of the next lower vertex and the bit offset number (that is the bit to be examined) together with the key word number to which the offset relates and if
F is "1", E indicates the terminal address. Operations.-The index system may perform three operations, find, insert and delete under the control of a store 50 holding sequences of micro-programme words. In a find operation, the key words of the search argument are entered into a key field 21, the identifying number of each word being used to ensure it is stored at the appropriated location. The associative store 10 is first searched to find the root node of the first word. If this results in a terminal address being found (that is if the F field of the selected register is "1"), the operation is terminated by reading out the required address from the E field. Otherwise the C and D fields are used to read respectively from store 20 the vertex number indicated and to select from masking store 30 a "1" bit in the offset bit position indicated by the D field so that the key word in store 20 is examined to see if the selected bit is "1" or "0" and consequently derive for a decoder
G a read-right or read-left signal for the selected vertex. The key word to be examined is determined by the higher bits of register D which are transferred unchanged via register fields
H and
I to register K in the key store 20. This process is repeated until a terminal address is found. In an insert operation the new key to be inserted is first used as a search argument in a find operation to retrieve the nearest key. If the retrieved and new key differ in bit offset position "i" the new key in truncated at bit "i" and used in a find operation to determine the vertex to be changed. A new vertex number is then allotted to an unused register in store 10 and the number is also stored in translation store 40 together with the bit offset position "i". The old number is read from store 40 into field A of store 10 and to decoder input G and store 10 is searched to read out to register fields E, F. The new vertex number is then read from store 40 into both fields A and M and the decoder input is complemented before store 10 is searched again, writing being effected from fields E and F. The address to be associated with the new vertex is placed in register field E and index store A is again searched (but with the decoder input not complemented), the record address being read from the field E. The data in fields C and D associated with the old vertex number is then altered to the new vertex number and the offset bit "i" by entering the old vertex number into register field
A, searching the store 10 and reading the contents of register field M (that is the new vertex number) into field C. The store 10 is then searched a second time and the offset bit position "i" transferred from the translation store 40 to the register field D. In a delete operation a find operation is again first performed to determine the vertex number to be deleted. The contents of fields A and B are then entered into the translation store and the contents of field A are fed to field C. The store 10 is searched using the contents of field C to find the number of the previous vertex which is read to fields A and B and then into store 40. The vertex number to be deleted is then read to fields A, B and the index store is again searched, with the input G complemented, to read to register fields E, F. The previous vertex number is then read from the store 40 to fields A, B and to decode input G, the index store being again searched with the data in fields E, F being written in.
更多信息请下载全文后查看。

相关文档
最新文档