Seite 1 von 1

FiFo Speicher programmieren - wie macht man das am Besten ?

Verfasst: 16.01.2007 20:49
von dibro
Hi zusammen,
ich möchte einen FiFo-Speicher programmieren.
Der soll z.B. 3 (oder mehr) Speicherplätze haben und in einer Schleife eingebaut sein.
Bei jedem Schleifendurchlauf wird vorn ein Wert hineingeschoben und die anderen Werte um einen Platz weiter geschoben. Der letzte Wert geht auf einen Stapel der ebenfalls als FiFo arbeitet. Hier wird die Summe des Inhalts gebildet.
Ich kann das natürlich über ein Array und entsprechende Zuweisungen lösen, das scheint mir aber etwas holperig zu sein. Vielleicht gibt es da eine elegante Möglichkeit, mit Zeigern oder so - da kenne ich mich noch nicht mit aus.
Wer bringt mich auf den rechten Weg?
Danke im Voraus

Verfasst: 16.01.2007 20:54
von ts-soft
Guck Dir mal das IncludePack von GPI an (gehört zu jaPBe)
http://www.gpihome.de/purebasic/jaPBe/j ... dePack.exe
Die InMemory.pbi sollte Dir helfen.

Verfasst: 16.01.2007 23:28
von dibro
Danke für den Tipp.
Habe ich mir angesehen, scheint aber nicht ganz so einfach zu sein. :shock:
Gibt's da irgendwo Beispiele? Dann wäre es ein bisschen einfacher.

Verfasst: 16.01.2007 23:40
von Kaeru Gaman
ich persönlich finde eine Array-lösung nicht holperig... ;)

Verfasst: 17.01.2007 00:40
von mk-soft
Hi,

Array ist gut.
Tipp. nicht die Daten im Array schieben sonder zwei Index variablen anlegen.
Eine für Eingangs Daten und die andere für Ausgangs Daten.

Index erhöhen und bei ende des Array wieder auf das erste setzen.

Beispiel für Array mit 16 Element
index + 1
index & 15
Und schon ist es ein Umlauf Array

Verfasst: 18.01.2007 16:43
von dibro
Danke mk-soft, das isses :D
Das mache ich so und verstehe es auch <) .

(Hab ich gestern schon mal geschrieben, dann aber wohl nur Vorschau gedrückt - heute war nämlich nix da)