AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Tutorial Arbeiten mit Dateien auf binärer Ebene
Thema durchsuchen
Ansicht
Themen-Optionen

Tutorial Arbeiten mit Dateien auf binärer Ebene

Ein Thema von Fehlersucher · begonnen am 22. Jan 2013 · letzter Beitrag vom 3. Feb 2013
Antwort Antwort
Seite 4 von 9   « Erste     234 56     Letzte »    
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#31

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 30. Jan 2013, 22:09
Es ist alles eine Frage der Interpretation.
Unangenehm wird es da, wo jemand annimmt seine Interpretation wäre die einzig richtige.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#32

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 30. Jan 2013, 23:46
Ich bin sehr erfreut darüber, dass die meisten hier nun wissen, ...
Bei der Gelegenheit: Es gibt nur 10 Typen von Menschen, solche die binär verstehen und solche die kein binär verstehen!
  Mit Zitat antworten Zitat
Fehlersucher

Registriert seit: 10. Nov 2012
32 Beiträge
 
#33

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 16:55
Was loht sich denn bei der Lauflängenkodierung mehr?

Ein Wort aus einer Textdatei direkt zu komprimieren, oder es erst binär umzuschreiben und dann zu komprimieren?
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#34

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 17:32
Ein Wort aus einer Textdatei direkt zu komprimieren, oder es erst binär umzuschreiben und dann zu komprimieren?
Was verstehst Du unter 'Wort direkt komprimieren' und unter 'in binär umzuschreiben'?
  Mit Zitat antworten Zitat
Fehlersucher

Registriert seit: 10. Nov 2012
32 Beiträge
 
#35

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 17:35
Ich meine die chars direkt zu komprimieren oder die chars erst in 0 und 1 umschreiben und dann von 0 und 1 die Lauflängencodierung zu machen.
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#36

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 17:55
Bei der letzten Variante fängst du glatt mal mit der 8 fachen Datenmenge an. Der erste Schritt wäre, die redundanz zu reduzieren indem man 8 Symbole in ein Byte zusammen fasst und damit schon eine Kompression um 87,5% erreicht
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#37

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 17:58
Beispiel:

Inhalt der Textdatei
"ABCD"

Inhalt nach einer "Übersetzung in binär"
"01000001010000100100001101000100"

Die Länge ist von 4 auf 4 * 8 gestiegn, also um 800%.
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton (31. Jan 2013 um 18:08 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#38

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 18:14
Ich bin mir nicht sicher, aber intuitiv vermute ich (es gibt bestimmt iwelche Theorien dazu), dass die Entropie sich bei einer 1:1 Übersetzung nicht ändert.
Dafür gibt es sogar eine Einheit (habe ich aber auch gerade erst entdeckt...)

Wenn ich jetzt mal ein Alphabet ausschließlich aus A-Z Großbuchstaben annehme, dann hat die Nachricht "ABCD" einen Informationsgehalt von 4,7 Shannon pro Zeichen. man benötigt also 5 Bits um ein Zeichen zu übertragen, bzw. 5*4=20 bits für die ganze Nachricht.

Für die Alternative Nachricht wären das 1 bit pro Zeichen = 32bits für die ganze Nachricht.
Ich würde sagen, Ziel verfehlt

Wenn man das jetzt noch RLE codiert kommt da sowas raus:
10 11 40 10 11 10 11 40 11 20 11 40 21 10 11 30 11 20

Das könnte man schön speichern, man kommt pro Wiederholungseinheit mit 4 bits aus. (Die erst Zahl minus 1 speichern braucht 3 bits und das Datenbit)
das macht bei 36 Wiederholungseinheiten glatt 144 bits. Hört sich nach einer Klasse Idee an

Für die Originalnachricht wurden übrigens 4 Bytes = 32 bits verwendet. Die RLE hat die Nachricht also auf das 4,5 fache aufgebläht!
  Mit Zitat antworten Zitat
Fehlersucher

Registriert seit: 10. Nov 2012
32 Beiträge
 
#39

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 18:19
Sollte man bei dem Algorithmus lieber mit 0 und 1 arbeiten, oder doch lieber normale chars des Alphabets?
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#40

AW: Tutorial Arbeiten mit Dateien auf binärer Ebene

  Alt 31. Jan 2013, 18:28
Tja, das ist jetzt die Frage was du machen möchtest. Ein allgemein anwendbarer Algorithmus zur Datenkompression sollte mit Bytes arbeiten.

Falls du deine Eingabedaten kennst und weißt dass es sich nur um Zeichen des Alphabets handelt kannst du noch mehr machen: Kodiere die Buchstaben in 6 bits (also 64 verschiedene Zeichen) und danach kannst du einen allgemeinen Standardalgorithmus drüberlaufen lassen.

Verlustbehaftete Kompression ist nochmal ein anderes Thema, das braucht man dann hauptsächlich bei Audio und Video, eher nicht bei Text.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 9   « Erste     234 56     Letzte »    


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 17:50 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