Tipps & Tricks 25.01.2022, 08:00 Uhr

Das wichtigste über die Zeichensätze ASCII und ANSI – mit Tabelle

Zeichen und Sonderzeichen lassen sich auch über ANSI-Codes eingeben. Aber was ist der Unterschied zu ASCII? Warum sind manche Codes drei- und manche vierstellig? Plus: Mit unserer Tabelle finden Sie die ANSI-Codes.
Wenn Sie die Alt-Taste gedrückt halten und «0137» eingeben, tippen Sie kein ASCII-Zeichen ein, sondern ein ANSI-Zeichen. Windows verwendet nämlich nicht den von DOS her bekannten ASCII-Zeichensatz, sondern den ANSI-Zeichensatz, der zwar im unteren Bereich von 0-127 mit dem ASCII-Zeichensatz übereinstimmt, darüber aber nicht mehr.
ANSI-Tabelle: Folgend unsere Tabelle der Zeichen 1 bis 255 des hier verwendeten Zeichensatzes. Wollen Sie eins davon unter Windows eingeben, machen Sie aus der zugehörigen Zahl am besten eine vierstellige, indem Sie eine Null voranstellen.
Machen Sie vierstellige Nummern draus (z.B. 0160) und tippen Sie die Zahl mit gedrückter Alt-Taste ein
Quelle: PCtipp.ch
Ein Anwendungsbeispiel: Für das Zeichen mit der Nummer 160 (das ist der «non-breaking space», nicht-umbrechendes bzw. geschütztes Leerzeichen) machen Sie die Zahl vierstellig: 0160. Nun drücken und halten Sie die Alt-Taste, während Sie auf dem Ziffernblock 0160 eintippen. Voilà, Sie haben das nicht-umbrechende Leerzeichen.
Tipp: Sie können die Zeichen via ANSI-Code auch in Excel-Formeln adressieren: «=ZEICHEN(160)» würde das geschützte Leerzeichen ausgeben oder danach suchen.

Wie sind ASCII und ANSI entstanden?

Diese Unterschiede sind historisch gewachsen. Ein Computer arbeitet mit Bits und Bytes. Ein Bit kann nur zwei Zustände haben, entweder «0» oder «1». Ein Computer muss also intern alles in Nullen und Einsen darstellen. Unsere reale Welt besteht aber aus mehr Zeichen. So musste zu Beginn des Computerzeitalters eine Konvention gefunden werden, wie man komplexere Zeichen im Computer abbilden kann. Dazu wurden die Bits zu Bytes zusammengestellt. Zuerst einmal berücksichtigte man dabei nur die Zahlen und Zeichen, die im Amerikanischen vorkommen, weil die Entwickler in Amerika zu Hause waren. So kam man, da das Englische kaum Sonderzeichen enthält wie z.B. das Deutsche oder Spanische oder andere Sprachen, zuerst einmal auf 7 Bits für ein Byte. So liessen sich Zahlen und auch Buchstaben mit unterschiedlichen Abfolgen von Nullen und Einsen darstellen. Die Zahl 25 beispielsweise sieht dann in Nullen und Einsen geschrieben, im sogenannten «Binärcode» (bi=2, also Null und Eins) so aus: 11001.
Bei 7 Bits für 1 Byte ergeben sich auf diese Art 128 (=2 hoch 7) verschiedene Möglichkeiten. Der Computer beginnt bei Null, also ergibt das die Zeichen 0-127, wie in der Tabelle im Artikel «ASCII-Tabelle für Sonderzeichen» angegeben.
In der Tabelle sehen Sie noch mehr Zeichen, nämlich die Zeichen bis zum Code 255. Das beruht darauf, dass die 7 Bit bald für die Darstellung der Zeichen nicht mehr ausreichten, die im Amerikanischen nicht vorkommen, zum Beispiel deutsche Umlaute oder spanische Buchstaben mit Tilde. Also wurde ein Byte auf 8 Bit erweitert, was insgesamt 256 (=2 hoch 8) Möglichkeiten ergibt. Im Gegensatz zum Standard-ASCII-Code von 0 bis 127 gibt es für die Darstellung der Zeichen von 128 bis 255 jedoch verschiedene Möglichkeiten. Eine davon ist der sogenannte ANSI-Code (ANSI = American National Standards Institute), der in Windows verwendet wird. Im ANSI-Code ist 137 dem Promillezeichen zugeordnet. Wie Sie in der ASCII-Code-Tabelle sehen können, ist dort das Zeichen 137 aber schon durch den Buchstaben «ë» belegt, also muss in ANSI, um das Zeichen Promille erzeugen zu können, noch eine Null vor der 137 eingegeben werden, damit nicht das ASCII-Zeichen 137 auf dem Bildschirm erscheint. Somit sind ASCII-Codes höchstens dreistellig, ANSI-Codes jedoch auch vierstellig.
Gegenüberstellung ASCII- und ANSI-Zeichentabelle
Nicht alle Zeichen aus ANSI und ASCII stimmen überein. Relevant ist unter Windows heute nur noch die rechte Hälfte (ANSI), sowie das neuere Unicode
Quelle: Archiv
Auf der Webseite SELFHTML finden Sie eine noch ausführlichere Darstellung der Zusammenhänge und diese Gegenüberstellung der beiden Tabellen: Wie Sie sehen, enthält der ANSI-Zeichensatz in dieser Darstellung noch einige Lücken, so z.B. für den Zifferncode 128, der im ASCII-Code mit dem Zeichen «Ç» verbunden ist. Der Code 0128 wurde mittlerweile im ANSI-Zeichensatz dem Euro-Zeichen «€» zugeordnet.
Verwirrend ist, dass es für dieselben Zeichen in beiden Zeichensätzen unterschiedliche Codes gibt, so wird z.B. das spitzige doppelte Anführungszeichen « im ASCII-Code mit Alt+174 erzeugt, im ANSI-Code jedoch mit Alt+0171. Das Ergebnis ist dasselbe Zeichen, Sie können sich also frei entscheiden, welchen der beiden Codes Sie in solchen Fällen verwenden wollen.
Im Anfangsbereich der Tabelle bis 127 ist es vollkommen gleichgültig, ob Sie eine Null oder auch zwei Nullen vor den Code setzen, dort erscheint immer dasselbe Zeichen, zum Beispiel ist es egal, ob Sie Alt+65, Alt+065 oder Alt+0065 eintippen, Sie erhalten immer den Grossbuchstaben «A».
Erst Unicode machte übrigens ein massives Erweitern der verfügbaren Zeichen möglich – inklusive Emojis.



Kommentare
Avatar
Markusjota
25.01.2022
Interessanter Artikel. Leider kommen bei mir zu den ASCII sowie den ANSI lediglich Zeichen wie Jasskarten und dergleichen Unbrauchbares, in Excel wie in Word. Was mache ich falsch bzw. was muss ich wo verstellen? Ich habe Win10 Pro.

Avatar
Gaby Salvisberg
26.01.2022
Hallo Markusjota Welche Schriftart ist eingestellt? Und kannst du uns ein, zwei Beispiele geben, was du genau eingibst und welches Zeichen dann erscheint? Herzliche Grüsse Gaby

Avatar
Markusjota
26.01.2022
Liebe Gaby, Herzlichen Dank für ein Feedback. In den beiden Beilagen ist illustriert, was ich erhalte bei ein paar ANSI Nummern und wie ich dazu gekommen bin. Hättest du eine Lösung? Herzliche Grüsse

Avatar
WalterA
17.03.2022
Alt-Taste drücken, dann die Nummer mit dem Nummerblock rechts eingeben. ╚ = Alt 200, ó = Alt 172 Im Google findest du die ANSI-Tabellen. Hast Du die Windings, Windings 1, Windings 2, Windings 3 und Symbol-Schriften gesehen?