andi@abow: ~/ausbildung_fachinformatiker/ $ cat fisi-datendarstellung-wie-text-bild-und-ton-zu-nullen-und-einsen-werden.md
>_abow

how do you do IT

Alle möglichen Handkniffe, die ich mir so zusammentrage im Berufsalltag

← cd ~/

FISI // Datendarstellung: Wie Text, Bild und Ton zu Nullen und Einsen werden

FISI // Datendarstellung: Wie Text, Bild und Ton zu Nullen und Einsen werden

Ein Computer kennt am Ende nur zwei Dinge: Strom an und Strom aus – also 1 und 0. Trotzdem speichert er Romane, Fotos und ganze Konzerte. Wie das funktioniert, ist Pflichtstoff in der FISI-Ausbildung und kommt in der Praxis täglich vor – vom Encoding-Bug in der CSV bis zur Frage, warum ein PNG schärfer skaliert als ein JPG. Dieser Beitrag bringt die drei großen Datentypen Text, Bild und Ton sauber auf den Punkt.


1. Das Fundament: Bit, Byte und das digitale Signal

Ein digitales Signal kennt nur zwei Zustände – im Gegensatz zum analogen, das jeden Zwischenwert annehmen kann:

BegriffBedeutung
Bitkleinste Einheit, 0 oder 1 (z. B. „Spannung aus / 5 V an“)
Byte8 Bit → 2⁸ = 256 mögliche Werte
Digitalisierungreale Größe → messen (abtasten) → in Stufen einteilen (quantisieren) → als Bits ablegen (codieren)

Diese drei Schritte – Abtasten, Quantisieren, Codieren – tauchen bei allen drei Datentypen wieder auf. Wenn du das Muster einmal verstanden hast, ist der Rest nur noch Variation.


2. Text speichern: ASCII → ISO 8859 → Unicode

Text ist eine Folge von Zeichen. Damit ein Rechner sie speichern kann, bekommt jedes Zeichen über einen Zeichensatz einen festen Binärcode.

Das „A“ hat im ASCII-Code die Nummer 65, binär 01000001. Genau diese Zuordnung leistet ein Zeichensatz.

ASCII

  • American Standard Code for Information Interchange, 1963 entwickelt.
  • Ursprünglich 7 Bit → 2⁷ = 128 Zeichen (Buchstaben, Ziffern, Steuerzeichen).
  • Später erweitert auf 8 Bit → 2⁸ = 256 Zeichen.

ISO 8859 (und der „ANSI“-Mythos)

  • Erweiterung des ASCII-Zeichensatzes, jeweils 8 Bit pro Zeichen.
  • Die Norm hat mehrere Teile (ISO 8859-1 „Latin-1“, -5 Kyrillisch, -7 Griechisch usw.), um zusätzliche Sprachen abzudecken.
  • Achtung: „ANSI“ ist nicht dasselbe wie ISO 8859. ANSI ist die Normungsorganisation (American National Standards Institute). Unter Windows meint „ANSI-Kodierung“ meist die Codepage Windows-1252 – verwandt mit, aber nicht identisch zu ISO 8859-1.

Unicode / UTF

  • Ab 1990 eingeführt, später als ISO/IEC 10646 normiert.
  • Ziel: ein Zeichensatz für alle bekannten Schriftzeichen weltweit.
  • Verbreitete Kodierungen: UTF-8, UTF-16, UTF-32.
  • UTF-8 ist heute der De-facto-Standard im Web: Es ist abwärtskompatibel zu ASCII (die ersten 128 Zeichen sind identisch) und nutzt je nach Zeichen 1 bis 4 Byte.

Praxisbezug: Genau hier entstehen die berüchtigten „ä“-Salate. Das passiert, wenn ein UTF-8-codierter Text als ISO 8859-1 interpretiert wird (oder umgekehrt). Wenn du in Logs, CSVs oder DB-Exporten kaputte Umlaute siehst, ist fast immer ein Encoding-Mismatch schuld.


3. Bilder speichern: Raster vs. Vektor

Bei Grafiken gibt es zwei grundverschiedene Welten.

Rastergrafik (Pixelgrafik)

  • Besteht aus einer Folge von Bildpunkten (Pixeln) – den Messpunkten eines Kamerasensors.
  • Die Pixel sind in einem Raster angeordnet. Die Anzahl der Messpunkte entspricht der Auflösung, angegeben in dpi (dots per inch, 1 inch = 2,54 cm).
  • + Jedes Pixel einzeln bearbeitbar, viele gängige Programme.
  • Skalierung (Vergrößern) ist verlustbehaftet → Klötzchen/Treppen.
  • Formate: gif, jpg/jpeg, png, psd, tiff.

Vektorgrafik

  • Speichert keine einzelnen Pixel, sondern das Bild als geometrische Objekte (Linien, Kreise, Polygone), beschrieben durch Vektoren (mathematisch minimal nötige Infos).
  • Beispiel Kreis: Position/Mittelpunkt, Radius, Linienstärke, Farbe.
  • + Verlustfrei skalierbar, verlustfreie Kompression.
  • Effekte wie Reflexionen/Schatten schwer darstellbar, spezielle Programme nötig; Anzeigegeräte sind auf Raster ausgelegt → oft Rasterung (Konvertierung) nötig.
  • Formate: svg, ai, pdf, eps, wmf.

Farbtiefe – wie viele Bits pro Pixel?

Pro Messpunkt wird der Farbton gemessen und als Bitfolge codiert. Die Anzahl der Bits ist die Farbtiefe.

ModusBitsAufteilungFarben
High Color16 BitR 5 / G 6 / B 52¹⁶ = 65.536
True Color24 BitR 8 / G 8 / B 82²⁴ = 16.777.216
True Color + Alpha32 BitR 8 / G 8 / B 8 / α 816,7 Mio. + Transparenz

Wichtig (häufiger Klausurfehler): 8 Bit pro Kanal ergeben 256 Werte je Kanal. Erst alle drei Kanäle zusammen ergeben 256 × 256 × 256 = 16.777.216 Farben insgesamtnicht „pro Kanal“.

Datenmenge einer Rastergrafik berechnen

Die Formel ist simpel:

Datenmenge [Bit] = Breite [px] × Höhe [px] × Farbtiefe [Bit]
Datenmenge [Byte] = Datenmenge [Bit] / 8

Beispiel (3209 × 2649 px, 24 Bit Farbtiefe):

3209 × 2649 × 24 = 204.015.384 Bit
204.015.384 / 8  = 25.501.923 Byte
25.501.923 / 1024 / 1024 ≈ 24,32 MiB

Würde man dasselbe Bild als reine 1-Bit-Bitmap (Schwarz/Weiß) ablegen, blieben nur die Pixel selbst:

3209 × 2649 × 1 = 8.500.641 Bit  (≈ 8,5 Mbit)
8.500.641 / 8 / 1024 / 1024 ≈ 1,013 MiB

Stolperfalle: 8.500.641 Bit sind ≈ 8,5 Mbit, nicht 0,85 Mbit. Bei MB/MiB außerdem aufpassen: Die Rechnung oben nutzt 1024er-Schritte → korrekt wäre die Einheit MiB (Mebibyte). In Datenblättern wird „MB“ oft als 1.000.000 Byte gemeint – das gibt leicht abweichende Zahlen.


4. Ton speichern: Sampling, Nyquist & Co.

Ein Audiosignal ist in der Natur analog (eine kontinuierliche Welle). Für die digitale Speicherung wird es per Sampling in eine diskrete Treppenfunktion verwandelt.

Beim Sampling wird die Amplitude des Signals in festen Zeitabständen gemessen (abgetastet) und als numerischer Wert gespeichert. Mit T als Periodendauer (Abtastperiode in Sekunden) gilt:

f = 1 / T   [Hz]      (1 Hz = 1 Messung pro Sekunde)

Sampling-Rate (Sampling-Frequenz)

  • Anzahl der Messvorgänge/Abtastungen pro Sekunde.
  • Audio-CD: 44,1 kHz → 44.100 Abtastungen pro Sekunde.

Nyquist-Shannon-Abtasttheorem

  • Um ein analoges Signal verlustfrei rekonstruieren zu können, muss die Abtastrate mehr als das Doppelte der höchsten enthaltenen Frequenz betragen.
  • Menschliches Gehör: ca. 20 Hz – 20 kHz.
  • → Theoretisch reichen knapp über 40 kHz. Die CD nutzt mit 44,1 kHz bewusst etwas Reserve (für Filter-Spielraum).

Stolperfalle: Im Lernzettel stand „40,1 kHz“. Das ist ein Zahlendreher. Gemeint ist: > 40 kHz nötig, CD-Standard 44,1 kHz.

Sampling-Tiefe (Bit-Tiefe)

  • Anzahl der Bits, mit denen ein einzelner Abtastwert gespeichert wird → bestimmt die Wertauflösung (Dynamik).
  • Standard: 16 Bit (CD-Qualität). Studio: 24 oder 32 Bit (32 Bit meist als Fließkomma). 64 Bit ist in der Praxis unüblich.

Tonkanäle (für Raumklang)

Mono · Stereo · Dolby Surround · 5.1-Sound.


5. Praxis: kleine PowerShell-Helfer

Für FISI-Azubis (und für mich im Alltag) sind zwei Mini-Skripte hilfreich, um die Theorie anfassbar zu machen.

a) Zeichen → Codepoint → Bitfolge anzeigen

<#
.SYNOPSIS
    Zeigt fuer einen Text je Zeichen den Unicode-Codepoint sowie die ASCII-/UTF-8-Bitfolge.
.NOTES
    Name:        PS_Zeichen_zu_Bitfolge
    Author:      Andreas Bowitz
    Version:     1.0
    LastUpdated: 2026-Jun-03
#>

param(
    [string]$Text = "Andi"
)

foreach ($char in $Text.ToCharArray()) {
    $code = [int][char]$char                              # Unicode-Codepoint (dezimal)
    $bin  = [Convert]::ToString($code, 2).PadLeft(8, '0') # Binaer, auf 8 Bit aufgefuellt
    $hex  = "0x{0:X2}" -f $code                            # Hexadezimal

    [PSCustomObject]@{
        Zeichen   = $char
        Dezimal   = $code
        Hex       = $hex
        Bitfolge  = $bin
    }
}

Für "Andi" liefert das u. a. A → 65 → 0x41 → 01000001. Genau das zeigt auch die Grafik oben.

b) Datenmenge einer Rastergrafik berechnen

<#
.SYNOPSIS
    Berechnet die unkomprimierte Datenmenge einer Rastergrafik aus Breite, Hoehe und Farbtiefe.
.NOTES
    Name:        PS_Bilddatenmenge_berechnen
    Author:      Andreas Bowitz
    Version:     1.0
    LastUpdated: 2026-Jun-03
#>

param(
    [int]$BreitePx   = 3209,
    [int]$HoehePx    = 2649,
    [int]$FarbtiefeBit = 24
)

$bits  = [double]$BreitePx * $HoehePx * $FarbtiefeBit
$bytes = $bits / 8
$mib   = $bytes / 1024 / 1024

[PSCustomObject]@{
    Pixel       = $BreitePx * $HoehePx
    Bit         = $bits
    Byte        = [math]::Round($bytes, 0)
    MiB         = [math]::Round($mib, 2)
} | Format-List

Ausgabe für die Beispielwerte: ≈ 24,32 MiB – passt zur Handrechnung oben.


6. Stolperfallen aus der technischen Prüfung

Damit der Stoff klausurfest sitzt, hier gesammelt die korrigierten Klassiker:

  1. Nyquist: Es heißt „mehr als das Doppelte“ der höchsten Frequenz – nicht „40,1 kHz“. Gehör bis 20 kHz → >40 kHz nötig → CD: 44,1 kHz.
  2. Farben bei 24 Bit: 256 Werte pro Kanal, aber 16.777.216 Farben insgesamt – nicht „pro Kanal“.
  3. ISO 8859: mehrere Teile, jeweils 8 Bit (nicht 18 Bit). Und ANSI ≠ ISO 8859 (ANSI = Organisation; Windows-„ANSI“ = CP-1252).
  4. Einheiten: 8.500.641 Bit ≈ 8,5 Mbit. Bei /1024-Rechnungen ist die korrekte Einheit MiB, nicht „MB“.
  5. Sampling-Tiefe: Standard 16 Bit, Studio 24/32 Bit. 64 Bit ist praktisch nicht gebräuchlich.

TL;DR

DatentypSchlüsselbegriffeFaustregel
TextASCII (7/8 Bit) → ISO 8859 (8 Bit) → Unicode/UTF-8 (1–4 Byte)UTF-8 ist heute Standard und ASCII-kompatibel
BildRaster (Pixel, dpi, Farbtiefe) vs. Vektor (Geometrie)B × H × Farbtiefe / 8 = Datenmenge
TonSampling-Rate, Nyquist, Bit-Tiefe, KanäleAbtastrate > 2 × höchste Frequenz

Das gemeinsame Muster bleibt immer gleich: Abtasten → Quantisieren → Codieren.

Weiterlesen

$ Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert