-
Beschreibung
. Die Elemente werden der Reihe nach in eine bereits sortierte Folge eingetragen.
. Dazu wird in der bereits sortierten Folge die richtige Stelle zum Einfügen von rechts her gesucht und gleichzeitig die bereits eingetragenen Elemente um eins nach rechts verschoben.
. Das neue Element wird dann an der auf diese Weise freigewordenen Position eingefügt.
Programmcode
procedure InsertionSort ( var f : TArray; HighIndex : integer ) : ...
mehr
-
Beschreibung
. Die Daten werden in einer doppelten Schleife abgearbeitet.
. Die innere Schleife umspannt jeweils den gesamten unsortierten Bereich: Dieser wird iterativ durchgearbeitet. Wenn ein Element größer ist als sein rechter Nachbar, so werden sie miteinander vertauscht.
. Nach jedem äußeren Schleifendurchlauf wurde der sortierte Bereich am Ende der Daten um mindestens 1 erhöht.
Programmcode
procedure BubbleSort ( var f : TArray; HighI ...
mehr
-
Beschreibung
. Das Verfahren arbeitet rekursiv nach dem Divide & Conquer - Prinzip.
. Die Folge wird rekursiv bis zur trivilaen Teilfolge der Länge 1 zerteilt (Divide).
. Diese Teilfolgen werden jeweils durch Merging vereint, die vereinten wiederum. etc. bis zur sortierten Gesamfolge (Conquer).
. Es wird ein zusätzliches Hilfsfeld Ziel von der gleichen Größe wie die zu sortierende Gesamtfolge benötigt.
Programmcode
procedure MergeSort ( va ...
mehr
-
Beschreibung
. Die Daten werden mit einem rekursiven Verfahren (Divide & Conquer) anhand ihrer Bitstruktur sortiert.
. Daten mit gesetztem n-ten Bit kommen in die rechte Hälfte, die anderen in die linke; für beide Hälften wird das Verfahren rekursiv aufgerufen.
Programmcode
procedure RadixExchangeSort ( var f : TArray; HighIndex : integer ) : string;
function Bit ( z, b : integer ) : integer;
// liefert das Bit mit der Nummer b e ...
mehr
-
Beschreibung
. Das Verfahren arbeitet nach dem Divide & Conquer-Prinzip.
. Aus einer zu sortierenden Teilfolge wird ein Element ausgewählt.
. Die Folge wird so umsortiert, daß das ausgewählte Element an seine insgesamt (bezogen auf den Sortiervorgang der vollständigen Datenfolge) richtige endgültige Position zu liegen kommt.
. Nach dem Umordnen dürfen links vom ausgewählten Element nur mehr kleinere Elemente stehen und rechts nur mehr größere ...
mehr
-
Sortieren auf Datenträger
Solange alle Daten im Hauptspeicher Platz haben, stimmen die obigen Aufwandsabschätzungen. In vielen Fällen sind die Datenmengen aber so groß, daß sie nur in großen Dateien auf Datenträgern Platz finden.
Meist wird nach einem Schlüssel (Kundennummer, Namen, ...) sortiert und die übrigen Daten (Adresse, ...) werden mitkopiert. Die Aufgabe vereinfacht sich stark, wenn es möglich wird, den Schlüssel sowie den Verweis auf ...
mehr
-
Zur Erreichung hoher Verabeitungsgeschwindigkeiten sind schnelle arithmetische Einheiten notwendig. Hierbei sind speziell die Multiplizierer beachtenswert, da sie meist auf mehrfaches Addieren zurückgeführt werden, und deshalb wesentlich mehr Rechenzeit benötigen, als die Addierer.
Die einfachste Möglichkeit wäre ein Multiplizierer aus einem Addierer und Schieberegistern.
Bild 2.1 Addie ...
mehr
-
Bild 2.7 Prinzipschaltbild eines Filters ohne Rückführung
Man könnte dieses Prinzipschaltbild praktisch direkt in eine Schaltung übernehmen, es wären dann aber 6 Multipli¬zierer und 7 Addierer nötig, was einen sehr hohen Hard¬ware-Aufwand bedeuten würde. Dieses System wird später noch beschrieben.
Die hardwaremäßig einfachste Struktur besteht aus einem ROM zur Speicherung der Koeffizienten, einem Schiebe¬register fü ...
mehr
-
Die selbe Basisstruktur wie in Bild 2.10. kann auch für kaskadierte FIR-Filter verwendet werden. Bild 2.11 zeigt ein Beispiel für ein dreistufiges Filter, wobei jedes Filter 4. Ordnung ist, und Bild 2.12 zeigt die Realisie¬rung mit einer AE.
Bild 2.11 Kaskadiertes FIR-Filter
Bild 2.12 Realisierung mit einer AE
Der einzige Trick, der hierbei benötigt wir ...
mehr
-
Wie bereits in der Einleitung zu diesem Kapitel erwähnt, gibt es die Möglichkeit, das Prinzipschaltbild unter Ver¬wendung von 6 Multiplizierern und 7 Addierern bei einem Filter 6. Ordnung praktisch direkt zu übernehmen.
Bild 2.15 Verwendung von N parallelen Zweigen für ein
Filter N-ter Ordnung
In diesem Fall ist keine Zirkulation der Amplitudenwerte nötig, sodaß das Schieberegist ...
mehr
-
Die Ausführung von IIR-Filtern unterscheidet sich von jener von FIR-Filtern nur sehr wenig. Bild 2.16 zeigt ein IIR-Filter, das die selbe Grundstruktur wie das FIR-Filter von Bild 2.9. benützt.
Bild 2.16 Struktur eines IIR-Filters mit einer AE
Die Gleichung, nach der dieses Filter arbeitet ist:
Hierbei wird während der ersten Multiplikation (Addier-Schiebe-Prinzip) das Wort y(n-12) aus dem Sch ...
mehr
-
Bild 2.17 zeigt das Prinzipschaltbild einer Kaskade von 3 Filtern 2. Ordnung, von denen jedes 2 Pole und 2 Nullstel¬len hat.
Bild 2.17 IIR-Filter als Kaskade 3er Filter 2.Ordnung
Bild 2.18 zeigt Struktur, Programm und Zustände einer Realisation dieses Filters mit 2 AE\'s. Die Struktur ist vergleichbar mit dem früher gezeigten mit 1 Bit breiten Schieberegister und Addier-Schiebe Multiplizierer. Die Aufgabenstellung der ...
mehr
-
Nur sehr selten sind in der Praxis so einfache Konfigu¬rationen wie die hier gezeigten in Verwendung. Wesentlich häufiger sind Filterbänke, die IIR oder FIR-Filter verwen¬den, wo möglicherweise jedes Filter eine Kaskade oder eine parallele Ausführung ist. Desto mehr Filter gemultiplext werden können, desto größer ist der Vorteil, der durch die Verwendung von digitalen Filtern erzielt werden kann, da man speziell die Speicher leicht an die spezi ...
mehr
-
Digitale Signalprozessoren müssen für Echtzeitverarbeitung einen sehr hohen Datendurchsatz haben, der größer ist als jener von herkömmlichen Mikroprozessoren. Da aber die Taktraten bei Mikroprozessoren in der Regel bereits knapp am technologisch sinnvoll Machbaren liegen, stellt sich die Frage welche Mittel man anwenden kann, um einen DSP schneller zu machen?
Zum einen liegt die Antwort in der Architektur der DSP\'s. Diese Prozessoren werden i ...
mehr
-
Diese Art von DSP soll am TMS 320xx von TI dargestellt werden.
Das Blockschaltbild dieses Prozessors ist bereits in Bild 3.1 dargestellt.
Die wichtigsten Merkmale dieses Einchip-Computers sind: 200ns Instruktionszyklus, 32 Bit Arithmetikeinheit, 16x16 Bit Parallelmultiplizierer (benötigt für eine Multiplikation nur einen Zyklus), 0..16 Bit Barrel-Shifter, 288 Byte Daten RAM (144x16), 3kByte Programm-Rom (1,5k x 16), die extern auf 8 kByte ...
mehr
-
Der bisher besprochene 320xx ist trotz verbesserter Architektur ein Von-Neumann-Computer, bei dem ein Zyklus das Senden der Adresse, Empfangen des Datums, Entschlüs¬seln und Verarbeiten umfaßt. Der hier beschriebene uPD7281 (\"Image-Pipelined-Processor\") verwen¬det die Datenfluß-Methode.
3.3.1 Datenflußmethode
Der Unterschied in der Arbeitsweise eines Computers, der die Datenflußmethode anwendet sei an einem einfachen Bei¬spiel dargestel ...
mehr
-
AB den 60er Jahren kamen NC Maschinen auf den Markt, diese besaßen zuerst eine festverdrahtete Steuerung sogenannte Schützensteuerung o. Relaissteuerung.
Mit der Mikroelektronik wurde die Relaissteuerung durch die Speicherprogrammierbare Steuerung ersetzt, somit konnten komplexere Steuerungsaufgaben bewältigt werden.
Diese Aufgaben können durch leicht bedienbare Software schneller entworfen, geändert und optimiert werden.
Weitere Vorteil ...
mehr
-
Bei einer relationalen Datenbank sind die Daten in Tabellenform gespeichert.
Tabelle
SNr. Vorname Zuname Alter
3 Max Müller 16
18 Peter Berger 17 Datensatz
12 Herbert Maier 16
13 Gunther Müller 16
5 Sigfried Gunaker 18
Spalte (Attribut)
SQL steht für structured query language (Strukturierte Abfragesprache)
select ZN, SNR bestimmt aus welcher Tab. Daten gehohlt werden
from schüler gibt an welche Zeile
wher ...
mehr
-
Tabelle: Spieler Tabelle: Verein
ZN Verein Verein Präsident
Herzog Bremen Bremen Pfanner
Stanzl Austria Austria Haym
SQL bildet eine neue Tabelle mit allen Atributen
Spieler.ZN Spieler.Verein Verein.Verein Verein.Präsident
Herzog Bremen Bremen Pfanner
Herzog Bremen Austria Haym
Stanzl Austria Bremen Pfanner
Stanzl Austria Austria Haym
Um alle ...
mehr
-
1.3 Equijoin
Joint man eine Tabelle mit sich selbst so heißt das Equijoin
BEISPIEL 3.01 (Alle Menschen und Großväter sind gesucht)
Tabelle: Mensch
Kind Vater
Josef Peppi
Peppi Hans
Susi Peppi
Peter Peppi
select K.Kind, V.Vater
from Mensch K, Mensch V
where K.Vater= V.Kind
BEISPIEL 3.01 (Alle Menschen und ihre Geschwister sind gesucht)
select K.Kind, V.Vater
from Mensch K, Mensch V
where K.Vater= V.Vater and K.Kind not(V.Ki ...
mehr