DE2548501C2 - Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer Folge von Zeichenketten - Google Patents
Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer Folge von ZeichenkettenInfo
- Publication number
- DE2548501C2 DE2548501C2 DE19752548501 DE2548501A DE2548501C2 DE 2548501 C2 DE2548501 C2 DE 2548501C2 DE 19752548501 DE19752548501 DE 19752548501 DE 2548501 A DE2548501 A DE 2548501A DE 2548501 C2 DE2548501 C2 DE 2548501C2
- Authority
- DE
- Germany
- Prior art keywords
- search term
- characters
- sequence
- term
- strings
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
- G06F16/90339—Query processing by using parallel associative memories or content-addressable memories
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
30
Die Erfindung bezieht sich auf ein Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen
Begriffs, aus einer Folge von Zeichenketten nach dem Oberbegriff des Patentanspruchs.
Bei der Verarbeitung von Daten besteht gelegentlich die Notwendigkeit, Zeichenketten daraufhin zu untersuchen,
ob ein einem nur aus einem oder wenigen Zeichen bestehender Begriff - im folgenden als
Suchbegriff bezeichnet - gleicher Begriff in ihr enthalten ist. Eine in Übersetzer- und Betriebssystem-Programmen
häufig vorkommende Operation dieser Art ist die Operation »Index«. Hierbei besteht im
Durchschnitt die zu untersuchende Zeichenkette aus etwa 8 bis 10 Zeichen, der Suchbegriff ist etwa 1 bis
3 Zeichen lang. Neben der Feststellung, ob der Suchbegriff in der längeren Zeichenkette enthalten ist oder
nicht, ist auch die Stelle, an der er gefunden wurde, interessant. Die derzeit übliche Ausführung dieser
Operation auf der Ebene von Maschinenbefehlen erfordert schon für einen durchschnittlichen Fall etwa
100 Befehle. Gelegentlich kommt es auch vor, daß Folgen von Zeichenketten, deren Längen nur um
wenige Zeichen von der Länge des Suchbegriffs abweichen, zu untersuchen sind. Dem Hauptpatent
25 38 401 liegt die Aufgabe zugrunde, ein Verfahren anzugeben, welches das Auffinden eines aus einem
oder mehreren Zeichen bestehenden Suchbegriffs aus einer längeren Zeichenkette oder aus einer Folge von
vergleichsweise kurzen Zeichenketten ohne erheblichen Zeitaufwand gestattet. Diese Aufgabe wird gemaß
dem Hauptpatent 25 38 401 dadurch gelöst, daß die lange Zeichenkette oder die Folge von kurzen
Zeichenketten in einen Assoziativspeicher mit zeilenweiser Ausgabe von Treffer- oder Fchlanzeigesignaien
geladen wird, und zwar
a 1) eine lange Zeichenkette linksbündig in die erste Zeile, gleichzeitig um ein Zeichen nach links verschoben
in die nächste Zeile, um ein weiteres Zeichen nach links verschoben in die folgende
Zeile usw., jedoch
a 2) bei einem aus einem Zeichen bestehenden Suchbegriff die lange Zeichenkette vertikal in die linke
Spalte,
b) bei einer Folge von kurzen Zeichenketten die ersten Zeichen aller Zeichenketten vertikal in die
linke Spalte bis zur Füllung der Spalte, die zweiten Zeichen in die anschließende Spalte usw., bis die
Zahl der geladenen Spalten gleich der Zahl der Zeichen im Suchbegriff ist und, sofern kein Treffersignal
entsteht, gegebenenfalls erneute Eingabe in analoger Weise mit dem zweiten (dritten usw.)
Zeichen linksbündig beginnend, wobei so oft wiederholt wird, als die Zeichenketten der Folge
mehr Zeichen als der Suchbegriff enthalten,
und daß der Suchbegriff sowie eine dem Suchbegriff angepaßte Maske linksbündig angeboten wird.
Ferner betrifft die Hauptanmeldung einen zur Durchführung des Verfahrens geeigneten Assoziativspeicher.
Demgegenüber besteht nunmehr die Aufgabe der Erfindung darin, ein Verfahren zum Auffinden eines
einem Suchbegriff gleichen Begriffs aus einer Folge von vergleichsweise kurzen Zeichenketten anzugeben,
welches den durchschnittlichen Zeitbedarf für die Suchvorgänge weiter verkürzt.
Diese Aufgabe wird gemäß der Erfindung durch die im kennzeichnenden Teil des Patentanspruchs angegebenen
Merkmale gelöst.
Die Erfindung wird im folgenden anhand eines Ausführungsbeispiels näher erläutert. Die Figur zeigt symbolisch
einen Assoziativspeicher 1, der durch horizontale Geraden in Zeilen und Spalten unterteilt ist.
Durch die Zeilen und Spalten werden die einzelnen Speicherplätze festgelegt, die jeweils ein Zeichen aufzunehmen
vermögen. Ein Zeichen kann hierbei 1 Bit oder eine Gruppe von Bit, beispielsweise auf 1 Byte,
umfassen. Die dick umrandeten Felder 2 (Speicherplätze) sind durch die Zeichen der zu einer Folge
gehörenden Zeichenketten belegt Die vorausgehende Eingabe der Zeichen lief in der Weise ab, daß zunächst
alle ersten Zeichen der Zeichenketten in der linken Spalte des Assoziativspeichers 1 abgelegt wurden,
danach wurden alle zweiten Zeichen in die nach rechts anschließende Spalte eingegeben. In dieser
Weise wurde weiter verfahren, bis schließlich alle Zeichen der Zeichenketten in den Speicher übernommen
waren.
Es versteht sich von selbst, daß eine zu untersuchende
Folge von Zeichenketten insgesamt mehr oder weniger Zeichenketten enthalten kann, als der
Assoziativspeicher Zeilen besitzt. Im ersten Fall muß die Untersuchung der Folge abschnittsweise erfolgen,
im zweiten Fall werden die Spalten natürlich nicht vollständig gefüllt.
Nach der Darstellung in der Figur bestehen die Zeichenketten der in dem Assoziativspeicher 1 gespeicherten
Folge aus zwei bis fünf Zeichen. Der Suchbegriff 3 aus drei Zeichen wird zusammen mit einer
Maske, die die vom Suchbegriff augenblicklich nicht erfaßten Zeichen der Zeichcnketten vom assoziativen
Vergleich ausschließt, zunächst in der Position A, d. h. linksbündig angelegt. Es ist klar, daß der Suchbegriff
unter den gegebenen Voraussetzungen in den Zeichenketten mit zwei Zeichen nicht enthalten sein
kann. Es wird angenommen, daß der Suchbegrif'f in der Position A auch in den übrigen Zeichenketten
nicht zu finden ist. Der Suchbegriff wird daher für einen weiteren Assoziationsvorgang in du; Position B,
d. h. um ein Zeichen nach rechts vwschoben. Auch in dieser Position des Suchbegriffs möge der assoziative
Vergleich noch keine Überseinstimmung ergeben. Der Suchbegriff wird daher um eine weliere
Stelle nach rechts in die Position C verschoben und der assoziative Vergleich wiederholt. Nunmehr möge ι ο
ein Treffersignal T in der vierten Speicherzeile von oben entstehen. Dieses Treffersignal Γ zeigt nicht nur
an, daß der Suchbegriff in einer Zeichenkette der Folge enthalten ist, sondern läßt mit Hilfe der Zeilennummer
und der Position des Suchbegriffs die Ermittlung der Lage des nunmehr gefundenen Begriffs innerhalb
der Zeichenkette und der Folge zu. Gegebenenfalls ist dabei zu berücksichtigen. &jü der soeben
untersuchte Inhalt des Assoziativspeichers nur ein Teil einer längeren Folge war.
Hätte der assoziative Vergleich auch in der Position
C des SuchbegrifTs entgegen der vorher getroffenen Annahme keinen Treffer ergeben, dann wäre
eine weitere Rechtsverschiebung des Suchbegriffs sinnlos. Der bisherige Inhalt des Assoziutivspeichers wird
dann gelöscht und durch eine neue Folge von Zeichenketten oder gegebenenfalls auch durch die Fortsetzung
einer längeren Folge ersetzt. Der assoziative Suchvorgang beginnt erneut, wobei der Suchbegriff
zuerst wieder in der Position A angeboten wird.
Es ist zweckmäßig, einen Assoziativspeicher zur Durchführung des erfindungsgemäßen Verfahrens so
auszubilden, daß er nicht nur vertikal, sondern auch horizontal und schräg ladbar ist.
Hierzu I Blatt Zeichnungen
Claims (1)
- Patentanspruch:Verfahren zum Auffinden eines aus einem oder mehreren Zeichen bestehenden, einem S negriff gleichen Begriffs aus einer Folge von ,eichenketten, deren Längen von der Länge des Suchbegriffs nicht erheblich abweichen, mit Hilfe eines spaltenweise (vertikal) ladbaren Assoziativspeichers mit zeilenweiser Ausgabe von Treffer- bzw. Fehlanzeigesignalen, in den die ersten Zeichen aller Zeichenketten der Folge in die linke Spalte bis zur Füllung der Spalte bzw. bis zum Ende der Folge, anschließend die zweiten Zeichen in die folgende Spalte usw. geladen werden, insbesondere nach Patent 2538401, dadurch gekennzeichnet, daß der Suchbegriff sowie eine dem Suchbegriff angepaßte Maske zunächst linksbündig angelegt wird und, sofern kein Treffersignal entsteht, der Suchbegriff und die Maske jeweils um ein Zeichen nach rechts verschoben werden, bis ein Treffersignal entsteht oder das am weitesten rechts stehende Zeichen des Suchbegriffs die gleiche Position wie das am weitesten rechtsstehende Zeichen der längsten, im Assoziativspeicher geladenen Zeichenkette einnimmt.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752548501 DE2548501C2 (de) | 1975-10-29 | 1975-10-29 | Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer Folge von Zeichenketten |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752548501 DE2548501C2 (de) | 1975-10-29 | 1975-10-29 | Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer Folge von Zeichenketten |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2548501B1 DE2548501B1 (de) | 1977-04-07 |
DE2548501C2 true DE2548501C2 (de) | 1977-11-24 |
Family
ID=5960396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19752548501 Expired DE2548501C2 (de) | 1975-10-29 | 1975-10-29 | Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer Folge von Zeichenketten |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2548501C2 (de) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3334528A1 (de) * | 1983-09-23 | 1985-04-11 | Siemens AG, 1000 Berlin und 8000 München | Verfahren und anordnung zum aufsuchen von einem vorgegebenen suchargument entsprechenden daten einer datenfolge mit assoziativen einrichtungen |
-
1975
- 1975-10-29 DE DE19752548501 patent/DE2548501C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2548501B1 (de) | 1977-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69027134T2 (de) | Zeichenverarbeitungsgerät | |
EP0409310B1 (de) | Verfahren sowie Anordnung zum Bestimmen von Kanten in Bildern | |
EP0285221B1 (de) | Verfahren zum Erkennen kontinuierlich gesprochener Wörter | |
DE3688640T2 (de) | Suchgerät. | |
DE2915673A1 (de) | Textbearbeitungseinrichtung mit einer anzeigeeinrichtung | |
DE3134282A1 (de) | Verfahren zur darstellung ideografischer zeichen und vergleichbarer graphiken | |
DE3047695A1 (de) | Verfahren und vorrichtung zum herstellen einer speichertabelle fuer farbkontrollbedingungen | |
DE3320213A1 (de) | Elektronischer rechner mit pruefmoeglichkeit | |
CH692634A5 (de) | Nivellierlatte und elektronisches Nivelliergerät. | |
DE2432608A1 (de) | Speicheranordnung fuer datenverarbeitungseinrichtungen | |
DE68927008T2 (de) | Verfahren zum komprimieren und dekomprimieren von punktmatrixzeichen | |
DE2513059C3 (de) | Zeichengenerator zur Zeichendarstellung | |
DE2221705A1 (de) | Zeichengenerator fuer die bildliche Zeichendarstellung mit variierbaren zeichenproportionalen Abstaenden | |
DE3503456A1 (de) | Vorrichtung zum erstellen und editieren eines schriftsatzes | |
DE2548501C2 (de) | Verfahren zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer Folge von Zeichenketten | |
DE3421919A1 (de) | Speichersteuereinheit | |
DE3931389C2 (de) | Vorrichtung zur Erfassung der Koinzidenz von in einer Pufferspeichersteuerung abgespeicherten Operanden | |
WO2008049497A1 (de) | Verfahren und vorrichtung zur inkrementierung von in speicherzellen eines speichers gespeicherten zählerständen | |
EP0080200B1 (de) | Verfahren und Anordnung zum Darstellen von Zeichen in Proportionalschrift | |
EP0115047B1 (de) | Verfahren und Anordnung zum Markieren von Textbereichen an einer Anzeigeeinheit | |
EP0050786A2 (de) | Verfahren und Schaltungsanordnung zur Transformation der Zeichenbreite von Schriftzeichen | |
DE3930889A1 (de) | Verfahren zur erkennung von n unterschiedlichen wortketten in einem sprachsignal | |
DE68923347T2 (de) | Sortierverfahren und -gerät. | |
DE2538401C2 (de) | Verfahren und Anordnung zum Auffinden eines kurzen, einem Suchbegriff gleichen Begriffs aus einer längeren Zeichenkette | |
DE2342660C3 (de) | Verfahren zum Sortieren von in einem Assoziativspeicher gespeicherten Daten und Einrichtung zur Durchführung des Verfahrens |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E77 | Valid patent as to the heymanns-index 1977 | ||
8340 | Patent of addition ceased/non-payment of fee of main patent |