AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stream/Datei bitweise lesen + schreiben

Ein Thema von stoxx · begonnen am 22. Jan 2005 · letzter Beitrag vom 22. Jan 2005
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Stream/Datei bitweise lesen + schreiben

  Alt 22. Jan 2005, 20:09
Zitat von Sebastian Nintemann:
Zitat:
Also diese Variante würde zwar das Schreiben in eine Datei vereinfachen, aber beim Lesen müsste man dann immer noch Bits shiften, wenn wie im Beispiel nur 3 Bit und dann ein Integer (32 Bit) in der Datei stehen.
Gerade eben nicht Du liest beispielsweise das erste byte der Datei, von der meinetwegen die ersten drei bits Informationen enthalten. Welche bits gesetzt sind kann man leicht über Bitmasken prüfen. Danach liest du ganz normal über die Read Methoden weiter aus dem Stream (beispielsweise 4 byte als Integer). Da muss dann eben nicht geshiftet werden. Du benutzt einfach die entsprechenden Methoden und den Schreib/Lese Offset den dir die Streamklasse (falls du Streams benutzt) zur verfügung stellt.
Ich wollte damit eigentlich sagen, dass deine Vorgehensweise nur für das Schreiben solcher Dateien gut geeignet ist. Wenn du aber ein Byte ausliest, dann wären die ersten drei Bits davon irgendwelche Daten und die restlichen fünf Bits von diesem Byte gehörten schon zum Integer, denn so liegen die Daten ja laut der Beschreibung von stoxx vor . Wenn du also danach 4 Bytes liest, gehören davon nur noch 27 Bits zum Integer und die restlichen fünf Bits können schon wieder zu irgendwelchen anderen Werten gehören. Also müsste man diese Daten auch erstmal "auseinandernehmen", um sie dann nach der "1-Byte-für-1-Bit"-Methode speichern zu können, da man ja sonst offensichtlich durcheinander kommt mit den verscheidenen Daten.

MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Sebastian Nintemann
(Gast)

n/a Beiträge
 
#12

Re: Stream/Datei bitweise lesen + schreiben

  Alt 22. Jan 2005, 20:39
Zitat von Binärbaum:
Wenn du also danach 4 Bytes liest, gehören davon nur noch 27 Bits zum Integer und die restlichen fünf Bits können schon wieder zu irgendwelchen anderen Werten gehören.
Genau das wollte ich ja mit meiner Methode verhindern, indem eben ungebrauchte bits zwischen den einzelnen Werten vorkommen können, um nicht vollständig gebrauchte Bytes "aufzufüllen". Ich ging dabei davon aus, dass stoxx die Datei selbst erstellt, also sich die Struktur selbst überlegen kann.

Zitat von stoxx:
Aber genau dieses "Begin" Byte ist wahrscheinlich schon 4 -5 Bit zu groß
4 Bit mehr auf 1 000 000 Ticks sind schon 488 kb.
Das ist natürlich auch keine Standardsituation. Wenn man zig Gigabyte Daten hat sollte man sich natürlich schon überlegen, wie man Platz sparen kann. Kommt halt immer auf die Situation an. Ich war jetzt eher von was kleinerem ausgegangen wo ein paar Bits pro Einheit mehr oder weniger nicht auffallen

Viele Grüße,
Sebastian
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz