Selbst wenn Sie kein Entwickler sind, haben Sie wahrscheinlich schon einmal das Wort 'ASCII' gehört. Vielleicht haben Sie beim Surfen im Internet erlebt, dass Text beschädigt wird und wie eine fremde Sprache aussieht, oder Sie haben eine Fehlermeldung gesehen, die besagt: "ASCII-Code ist nicht kompatibel".

Was genau ist dieser ASCII-Code, dass er wie die 'Lingua Franca' der digitalen Welt behandelt wird? Heute werden wir die grundlegendste Vereinbarung darüber erforschen, wie Computer menschliche Sprache verstehen - den ASCII-Code.


1. Computer kennen nur Zahlen



Die Buchstaben 'A', 'B', 'C', die wir auf dem Bildschirm sehen, sind für den Computer keine Bilder oder Zeichen. Computer sind reines 0 und 1 (binär) rechnerisch teuflisch, daher können sie nur diese Form von Daten verstehen.

Wie werden dann die Buchstaben, die wir auf der Tastatur eingeben, im Computer gespeichert? Zwischen Mensch und Computer gibt es eine "Vereinbarung".

"Lass uns künftig die Zahl 65 als den Buchstaben 'A' bezeichnen."

"Die Zahl 97 bezeichnen wir als den Buchstaben 'a'."

Tabelle, die diese Vereinbarung systematisch darstellt, ist der ASCII (American Standard Code for Information Interchange). Wie der Name schon sagt, handelt es sich um den amerikanischen Standard für den Austausch von Informationen.

2. Die Struktur des ASCII-Codes: Die Magie von 7 Bit

Der ASCII-Code wurde in den 1960er Jahren festgelegt. Zu dieser Zeit waren Computerressourcen sehr begrenzt, weshalb es erforderlich war, Zeichen so effizient wie möglich darzustellen. Die gewählte Lösung war 7 Bit.

  • Insgesamt 128 Zeichen: Die Anzahl der Kombinationen, die mit 7 Bit dargestellt werden kann, ist $2^7$, was von 0 bis 127 insgesamt 128 ergibt.

  • Komponenten:

    • Steuerzeichen (0~31): Sie werden nicht auf dem Bildschirm angezeigt, sind jedoch für Kommunikationskontrollen oder Zeilenumbruch (Line Feed), Tabulator (Tab) usw. zuständig.

    • Darstellbare Zeichen (32~127): Hierzu gehören Sonderzeichen, Zahlen (0-9), lateinische Großbuchstaben (A-Z) und Kleinbuchstaben (a-z).

3. Warum benutzen wir ASCII immer noch?



Die moderne Technologie hat sich enorm entwickelt, doch der ASCII-Code bleibt die Wurzel der digitalen Welt. Warum ist das so?

1) Der König der Kompatibilität

Selbst das modernste und am weitesten verbreitete Zeichencodierungssystem, UTF-8, ist vollständig mit dem ASCII-Code kompatibel. Ein englisches 'A' in einem UTF-8-Dokument hat dieselben Daten wie der ASCII-Code. Das bedeutet, dass es zwischen sehr alten Legacy-Systemen und den neuesten Systemen keine Probleme gibt, wenn englische Daten ausgetauscht werden.

2) Die Grundlage der Programmierung

Die Regelung der ASCII-Werte beim Umgang mit Zeichen in der Programmierung ist sehr praktisch.

  • 'A' ist 65, 'a' ist 97.

  • Die Differenz zwischen diesen beiden Werten beträgt genau 32.

    Entwickler nutzen diese Zahlenregel, um zwischen Groß- und Kleinbuchstaben zu konvertieren oder Daten effizient zu sortieren.

3) Die leichteste Datenform

Da alle Zeichen innerhalb von 1 Byte verarbeitet werden, sind Dokumente, die nur in englischer Sprache (lateinischen Schrift) verfasst sind, sehr klein im Speicher und die Verarbeitungszeiten sind schnell. Dies ist der Grund, warum die meisten Internetkommunikationsprotokolle (HTTP usw.) auf ASCII basieren.

4. Das Erbe von ASCII: ASCII-Kunst (ASCII Art)

Der ASCII-Code hat nicht nur eine einfache Kommunikationsprotokoll überstiegen, sondern auch eine Kultur hervorgebracht. In der Zeit, als grafische Unterstützung in Terminalumgebungen unvorstellbar war, schufen die Menschen mit nur den Zeichen ihrer Tastatur Bilder. In einem japanischen Drama aus den späten 1990er Jahren bis frühen 2000er Jahren, "電車男" (Densha Otoko), erscheint eine Figur, die beeindruckende Kunst mit ASCII erstellt.

   |\---/|
   | o_o |
    \_^_/

Eine solche Kultur, die mit nur 128 verfügbaren Zeichen humorvolle Ausdrücke schafft, findet man auch heute noch häufig in den Kommentaren von Entwicklern oder in E-Mail-Signaturen.

Beispiel für ASCII-Kunst aus dem Drama Densha Otoko

5. Die entscheidenden Grenzen von ASCII: Die Welt spricht nicht nur Englisch

Jedoch hat ASCII einen schwerwiegenden Nachteil. Es beginnt schon mit der Bezeichnung "American Standard".

In dem kleinen Rahmen von 7 Bit gab es keinen Platz für asiatische Schriftzeichen wie Kanji, Hangul, Japanisch (CJK) sowie für Buchstaben aus Kulturen, die keine lateinischen Buchstaben verwenden, wie Arabisch, Hindi, Kyrillisch.

Dadurch mussten in der Vergangenheit separate Codierungssysteme für jede Sprachgemeinschaft (EUC-KR, Shift_JIS, Big5 usw.) erstellt werden. Wenn Länder mit unterschiedlichen Verfahren Daten austauschten, wurden die Zeichen oft zerstört und als oder □□ in Form von unlesbaren Symbolen angezeigt, was als Mojibake (Zeichenverschlechterung) bekannt ist.

Schließlich wurde ein neuer Standard benötigt, um alle Schriftzeichen der Welt zusammenzuführen, und so entstand der Unicode. Interessant ist, dass der erste Platz in diesem riesigen Unicode (0–127) immer noch vom ASCII-Code belegt wird, was Respekt für den Beginn der digitalen Geschichte bedeutet.


Zusammenfassung

  1. Definition: Die erste standardisierte Vereinbarung, bei der Computer Zeichen eins zu eins mit Zahlen (0-127) verknüpfen.

  2. Merkmale: Enthält nur lateinische Buchstaben, Zahlen und grundlegende Sonderzeichen.

  3. Grenzen: Kann keine nicht-lateinischen Schriftzeichen wie CJK (Chinesisch, Japanisch, Koreanisch), Arabisch usw. darstellen.

Der ASCII-Code ist nicht einfach eine Auflistung von Zahlen. Er verkörpert die Anstrengungen und Effizienz der Computerwissenschaftler, die versuchten, menschliche Sprache in maschinelle Sprache zu übersetzen, und ist das grundlegendste Alphabet der digitalen Ära.


Vorausschau auf den nächsten Beitrag

Wir werden die enge Kammer des ASCII-Codes verlassen und die Prinzipien des umfangreichen Standards Unicode kennenlernen, der alle Sprachen der Welt und sogar Emojis (😊) umfasst. Wenn Sie wissen möchten, "Warum werden meine Zeichen zerbrochen?", bleiben Sie gespannt auf den nächsten Post!