ASCII-Tabelle — Dezimal, Hex, Binär & Oktal
Durchsuchen Sie alle 128 ASCII-Codes (0–127) mit ihren Dezimal-, Hexadezimal-, Oktal- und Binärdarstellungen. Steuerzeichen (0–31, 127) sind hervorgehoben und mit Standardabkürzungen sowie vollständigen Namen beschriftet. Filtern Sie nach druckbaren Zeichen oder Steuercodes, und suchen Sie nach Dezimalzahl, Hex-Wert oder Zeichen.
| Dez | Hex | Zeichen | Beschreibung |
|---|---|---|---|
| 0 | 0x00 | NUL | NUL — Null |
| 1 | 0x01 | SOH | SOH — Start of Heading |
| 2 | 0x02 | STX | STX — Start of Text |
| 3 | 0x03 | ETX | ETX — End of Text |
| 4 | 0x04 | EOT | EOT — End of Transmission |
| 5 | 0x05 | ENQ | ENQ — Enquiry |
| 6 | 0x06 | ACK | ACK — Acknowledge |
| 7 | 0x07 | BEL | BEL — Bell |
| 8 | 0x08 | BS | BS — Backspace |
| 9 | 0x09 | HT | HT — Horizontal Tab |
| 10 | 0x0A | LF | LF — Line Feed |
| 11 | 0x0B | VT | VT — Vertical Tab |
| 12 | 0x0C | FF | FF — Form Feed |
| 13 | 0x0D | CR | CR — Carriage Return |
| 14 | 0x0E | SO | SO — Shift Out |
| 15 | 0x0F | SI | SI — Shift In |
| 16 | 0x10 | DLE | DLE — Data Link Escape |
| 17 | 0x11 | DC1 | DC1 — Device Control 1 (XON) |
| 18 | 0x12 | DC2 | DC2 — Device Control 2 |
| 19 | 0x13 | DC3 | DC3 — Device Control 3 (XOFF) |
| 20 | 0x14 | DC4 | DC4 — Device Control 4 |
| 21 | 0x15 | NAK | NAK — Negative Acknowledge |
| 22 | 0x16 | SYN | SYN — Synchronous Idle |
| 23 | 0x17 | ETB | ETB — End of Transmission Block |
| 24 | 0x18 | CAN | CAN — Cancel |
| 25 | 0x19 | EM | EM — End of Medium |
| 26 | 0x1A | SUB | SUB — Substitute |
| 27 | 0x1B | ESC | ESC — Escape |
| 28 | 0x1C | FS | FS — File Separator |
| 29 | 0x1D | GS | GS — Group Separator |
| 30 | 0x1E | RS | RS — Record Separator |
| 31 | 0x1F | US | US — Unit Separator |
| 32 | 0x20 | SP — Space | |
| 33 | 0x21 | ! | |
| 34 | 0x22 | " | |
| 35 | 0x23 | # | |
| 36 | 0x24 | $ | |
| 37 | 0x25 | % | |
| 38 | 0x26 | & | |
| 39 | 0x27 | ' | |
| 40 | 0x28 | ( | |
| 41 | 0x29 | ) | |
| 42 | 0x2A | * | |
| 43 | 0x2B | + | |
| 44 | 0x2C | , | |
| 45 | 0x2D | - | |
| 46 | 0x2E | . | |
| 47 | 0x2F | / | |
| 48 | 0x30 | 0 | |
| 49 | 0x31 | 1 | |
| 50 | 0x32 | 2 | |
| 51 | 0x33 | 3 | |
| 52 | 0x34 | 4 | |
| 53 | 0x35 | 5 | |
| 54 | 0x36 | 6 | |
| 55 | 0x37 | 7 | |
| 56 | 0x38 | 8 | |
| 57 | 0x39 | 9 | |
| 58 | 0x3A | : | |
| 59 | 0x3B | ; | |
| 60 | 0x3C | < | |
| 61 | 0x3D | = | |
| 62 | 0x3E | > | |
| 63 | 0x3F | ? | |
| 64 | 0x40 | @ | |
| 65 | 0x41 | A | |
| 66 | 0x42 | B | |
| 67 | 0x43 | C | |
| 68 | 0x44 | D | |
| 69 | 0x45 | E | |
| 70 | 0x46 | F | |
| 71 | 0x47 | G | |
| 72 | 0x48 | H | |
| 73 | 0x49 | I | |
| 74 | 0x4A | J | |
| 75 | 0x4B | K | |
| 76 | 0x4C | L | |
| 77 | 0x4D | M | |
| 78 | 0x4E | N | |
| 79 | 0x4F | O | |
| 80 | 0x50 | P | |
| 81 | 0x51 | Q | |
| 82 | 0x52 | R | |
| 83 | 0x53 | S | |
| 84 | 0x54 | T | |
| 85 | 0x55 | U | |
| 86 | 0x56 | V | |
| 87 | 0x57 | W | |
| 88 | 0x58 | X | |
| 89 | 0x59 | Y | |
| 90 | 0x5A | Z | |
| 91 | 0x5B | [ | |
| 92 | 0x5C | \ | |
| 93 | 0x5D | ] | |
| 94 | 0x5E | ^ | |
| 95 | 0x5F | _ | |
| 96 | 0x60 | ` | |
| 97 | 0x61 | a | |
| 98 | 0x62 | b | |
| 99 | 0x63 | c | |
| 100 | 0x64 | d | |
| 101 | 0x65 | e | |
| 102 | 0x66 | f | |
| 103 | 0x67 | g | |
| 104 | 0x68 | h | |
| 105 | 0x69 | i | |
| 106 | 0x6A | j | |
| 107 | 0x6B | k | |
| 108 | 0x6C | l | |
| 109 | 0x6D | m | |
| 110 | 0x6E | n | |
| 111 | 0x6F | o | |
| 112 | 0x70 | p | |
| 113 | 0x71 | q | |
| 114 | 0x72 | r | |
| 115 | 0x73 | s | |
| 116 | 0x74 | t | |
| 117 | 0x75 | u | |
| 118 | 0x76 | v | |
| 119 | 0x77 | w | |
| 120 | 0x78 | x | |
| 121 | 0x79 | y | |
| 122 | 0x7A | z | |
| 123 | 0x7B | { | |
| 124 | 0x7C | | | |
| 125 | 0x7D | } | |
| 126 | 0x7E | ~ | |
| 127 | 0x7F | DEL | DEL — Delete |
128 von 128 ASCII-Codes werden angezeigt
Wie es funktioniert
Was ist ASCII?
ASCII (American Standard Code for Information Interchange) ist ein Zeichenkodierungsstandard, der ursprünglich 1963 veröffentlicht wurde. Er definiert 128 Zeichen: 33 nicht druckbare Steuerzeichen (Codes 0–31 und 127) und 95 druckbare Zeichen (Codes 32–126), darunter englische Groß- und Kleinbuchstaben, die Ziffern 0–9 und gängige Satzzeichen. ASCII wurde zur Grundlage nahezu aller modernen Textkodierungen, einschließlich UTF-8, das für die ersten 128 Codepunkte abwärtskompatibel mit ASCII ist.
Jedem ASCII-Zeichen wird ein 7-Bit-Ganzzahlwert zugewiesen, weshalb die Tabelle bei 127 (2⁷ − 1) endet. Bei der Speicherung in einem 8-Bit-Byte ist das führende Bit für Standard-ASCII typischerweise 0. Der erweiterte ASCII-Bereich (128–255) ist durch die ursprüngliche Spezifikation nicht standardisiert und variiert je nach Codepage — ISO 8859-1, Windows-1252 und ähnliche Kodierungen definieren jeweils unterschiedliche Zeichensätze für die obere Hälfte des Bytes.
Steuerzeichen (0–31 und 127)
Die ersten 32 ASCII-Codes und Code 127 sind nicht druckbare Steuerzeichen, die von Fernschreiber-Konventionen übernommen wurden. Die meisten sind in der modernen Datenverarbeitung veraltet, einige bleiben jedoch wichtig: Code 9 (HT, horizontaler Tabulator), Code 10 (LF, Zeilenvorschub oder Zeilenumbruch unter Unix/Linux), Code 13 (CR, Wagenrücklauf, bei Windows-Zeilenenden als CR+LF verwendet), Code 27 (ESC, Escape, für Terminal-Escapesequenzen) und Code 127 (DEL). Diese Zeichen werden nicht als sichtbare Glyphen dargestellt.
Auf Unix-ähnlichen Systemen können Steuerzeichen im Terminal durch Drücken von Strg und dem entsprechenden Buchstaben erzeugt werden: Strg+A = SOH (1), Strg+C = ETX (3, sendet Unterbrechungssignal), Strg+D = EOT (4, signalisiert Eingabeende), Strg+J = LF (10), Strg+M = CR (13), Strg+Z = SUB (26, hält einen Prozess unter Unix an). Das Verständnis dieser Codes ist essenziell für Low-Level-I/O, Terminal-Steuersequenzen und die Implementierung von Netzwerkprotokollen.
ASCII in der Programmierung und Webentwicklung
In JavaScript erhalten Sie den ASCII-Code eines Zeichens mit charCodeAt(0): 'A'.charCodeAt(0) gibt 65 zurück. Zur Rückkonvertierung liefert String.fromCharCode(65) den Buchstaben 'A'. In Python gibt ord('A') den Wert 65 zurück, und chr(65) ergibt 'A'. In C sind char-Werte Ganzzahlen und können direkt in arithmetischen Ausdrücken verwendet werden: 'A' + 1 ergibt 'B'.
ASCII-Werte bilden die Grundlage für viele gängige Programmiermuster. Der Unterschied zwischen Groß- und Kleinbuchstaben beträgt stets 32: 'a' (97) = 'A' (65) + 32. Die Ziffern 0–9 belegen die Codes 48–57; zieht man 48 vom ASCII-Wert eines Ziffernzeichens ab, erhält man seinen numerischen Wert. URL-Kodierung stellt nicht URL-sichere Zeichen als %XX dar, wobei XX der hexadezimale ASCII-Code ist — diese Tabelle ist daher unverzichtbar beim Debuggen von URL-kodierten Zeichenketten und HTTP-Headern.
Häufige Fragen
›Was ist der ASCII-Code für Enter / Zeilenumbruch?
Das Zeilenumbruchzeichen (Line Feed) ist ASCII-Code 10 (0x0A, LF). Unter Unix/Linux/macOS wird ein Zeilenumbruch ausschließlich durch LF dargestellt. Unter Windows wird er durch CR+LF (Codes 13 und 10, also 0x0D 0x0A) dargestellt. Das Wagenrücklaufzeichen ist Code 13 (0x0D, CR). Beim Schreiben von plattformübergreifendem Textverarbeitungscode sollten Sie stets beide Zeilenenden — LF und CR+LF — behandeln.
›Was ist der ASCII-Code für das Leerzeichen?
Das Leerzeichen ist ASCII-Code 32 (0x20, SP). Es ist das erste druckbare ASCII-Zeichen. Das geschützte Leerzeichen (in HTML als verwendet) ist kein Bestandteil des Standard-7-Bit-ASCII — es ist Code 160 (0xA0) in ISO 8859-1 und wird in UTF-8 als 0xC2 0xA0 (zwei Bytes) kodiert.
›Was ist der Unterschied zwischen ASCII, UTF-8 und Unicode?
ASCII definiert 128 Zeichen mit 7-Bit-Codes. Unicode ist ein universeller Standard, der über 140.000 Zeichen mit Codepunkten bis U+10FFFF definiert. UTF-8 ist eine variable Kodierung von Unicode: ASCII-Zeichen (0–127) werden in einem einzelnen Byte kodiert, wodurch sie abwärtskompatibel mit ASCII ist. Zeichen jenseits von 127 verwenden in UTF-8 2–4 Bytes. Moderne Textsysteme verwenden UTF-8 oder UTF-16, doch ASCII bleibt für Protokollheader, Dateiformate und Legacy-Systeme wichtig.
›Wie finde ich den ASCII-Code eines Zeichens in JavaScript?
Verwenden Sie charCodeAt(0): 'A'.charCodeAt(0) gibt 65 zurück. Für Unicode-Codepunkte über 65535 verwenden Sie stattdessen codePointAt(0). Um einen Code zurück in ein Zeichen umzuwandeln: String.fromCharCode(65) gibt 'A' zurück. Für vollständige Unicode-Unterstützung: String.fromCodePoint(128512) gibt das Emoji 😀 zurück.
›Was bewirkt ASCII-Code 0 (NUL)?
NUL (Code 0) ist das Nullzeichen. In C und vielen anderen Sprachen wird es als Zeichenketten-Terminator verwendet — die Zeichenkette „Hello“ wird im Speicher als die Bytes 72, 101, 108, 108, 111, 0 gespeichert. In Datenbanken und Dateiformaten kann NUL als Feldtrenner oder Auffüllbyte vorkommen. In den meisten Texteditoren und Terminals ist NUL unsichtbar und wird ignoriert, kann jedoch Probleme verursachen, wenn Binärdateien als Text gelesen werden.
›Was ist das Escape-Zeichen (ASCII 27)?
ESC (Code 27, 0x1B) ist das Escape-Zeichen. Es leitet ANSI/VT100-Escapesequenzen ein, die Terminalfarben und Cursorbewegungen steuern. Die Sequenz ESC[31m beispielsweise ändert die Textfarbe des Terminals auf Rot. In vielen Anwendungen sendet das Drücken der Escape-Taste dieses Zeichen. Es wird auch in verschiedenen Datenformaten und Kommunikationsprotokollen verwendet.
›Warum hat der Großbuchstabe A den ASCII-Code 65 und der Kleinbuchstabe a den Code 97?
Die ASCII-Tabelle wurde so konzipiert, dass Großbuchstaben (A=65, B=66, …, Z=90) und Kleinbuchstaben (a=97, b=98, …, z=122) sich genau um 32 unterscheiden. Dies ermöglicht die Umwandlung zwischen Groß- und Kleinschreibung durch eine einzelne Addition oder Subtraktion. Um in ASCII Großbuchstaben in Kleinbuchstaben umzuwandeln: 32 addieren (oder Bit 5 setzen). Um Kleinbuchstaben in Großbuchstaben umzuwandeln: 32 subtrahieren (oder Bit 5 löschen). Daher funktioniert die bitweise Groß-/Kleinschreibungskonvertierung in C: char lower = upper | 0x20.
›Was ist der Unterschied zwischen CR, LF und CRLF?
CR (Carriage Return, Code 13) und LF (Line Feed, Code 10) stammen aus den Konventionen von Schreibmaschinen und Fernschreibern. CR bewegt den Druckkopf an den Zeilenanfang; LF rückt zur nächsten Zeile vor. Unix/Linux verwendet ausschließlich LF für Zeilenumbrüche. Windows verwendet CR+LF (beide zusammen). Das klassische Mac OS (vor OS X) verwendete ausschließlich CR. Die meisten modernen Parser verarbeiten alle drei Varianten, aber das Mischen von Zeilenenden in Quelldateien verursacht Probleme bei Versionskontroll-Diffs und einigen Textverarbeitungsprogrammen.
Verwandte Tools
Zuletzt aktualisiert: