Das Morsen stellte die ersten Möglichkeit dar, über weite Distanzen zu kommunizieren. Es war Samuel F.B.Morse des ein 1844 entwickelte. Dieser Code bestand aus Punkten und Stirchen (ein binärer Code, in gewisser Weise...). Dadurch waren Kommunikationen viel schneller möglich, als mit dem damaligen Postsystem der Vereinigten Staaten, dem Pony Express. Der Telegraphist war eine Person von entscheidender Bedeutung, er musste den Code genau kennen…
Es wurden zahlreiche andere Codes erfunden, wie der von Émile Baudot (mit dem Namen code Baudot, im Englischen wird er Murray Code genannt).
Am 10 März 1876 entwickelt Dr Graham Bell das Telephon, eine revolutionäre Neuerung, mit der akustische Informationen über Metallleitungen weitergegeben werden können. Nebenbei bemerkt hat das Repräsentantenhaus die Erfindung des Telefons Antonio Meucci zugeschrieben. Dieser hat in der Tat 1871 einen Patentantrag gestellt, konnte es aber nach 1874 nicht weiter finanzieren.
Diese Leitungen trugen zur Entwicklung von Fernschreibern bei, Geräte, mit denen Zeichen im Baudot-Code codiert und decodiert werden konnten (die Zeichen waren auf 5 Bits codiert, es gab also lediglich 32 Zeichen...).
In den 60ern wurde der ASCII-Code (American Standard Code for Information Interchange) als Standard festgelegt. Er ermöglicht das Codieren von Zeichenr auf 8 Bits, also 256 mögliche Zeichen.
Der Computerspeicher speichert alle Daten in digitaler Form. Zeichen können nicht direkt gespeichert werden. Jedes Zeichen hat daher ein Äquivalent in digitalem Code: dies ist der ASCII-Code (American Standard Code for Information Interchange - übersetzt « Amerikanischer Standardcode für Informationsaustausch »). Der Basis-ASCII-Code stellte die Zeichen auf 7 Bits dar (also 128 mögliche Zeichen, von 0 bis 127).
| Zeichen | ASCII-Code | hexadezimaler Code |
|---|---|---|
| NUL (Null) | 0 | 0 |
| SOH (Start of heading) | 1 | 1 |
| STX (Start of text) | 2 | 2 |
| ETX (End of text) | 3 | 3 |
| EOT (End of transmission) | 4 | 4 |
| ENQ (Enquiry) | 5 | 5 |
| ACK (Acknowledge) | 6 | 6 |
| BEL (Bell) | 7 | 7 |
| BS (Backspace) | 8 | 8 |
| TAB (horizontale Tabulation) | 9 | 9 |
| LF (Line Feed, Zeilenumbruch) | 10 | 0A |
| VT (Vertical tabulation, vertikale Tabulation) | 11 | 0B |
| FF (Form feed) | 12 | 0C |
| CR (Carriage return, Wagenrücklauf) | 13 | 0D |
| SO (Shift out) | 14 | 0E |
| SI (Shift in) | 15 | 0F |
| DLE (Data link escape) | 16 | 10 |
| DC1 (Device control 1) | 17 | 11 |
| DC2 (Device control 2) | 18 | 12 |
| DC3 (Device control 3) | 19 | 13 | DC4 (Device control 4) | 20 | 14 |
| NAK (Negative acknowledgement) | 21 | 15 |
| SYN (Synchronous idle) | 22 | 16 |
| ETB (End of transmission block, Ende des Übertragungsblocks) | 23 | 17 |
| CAN (Cancel, abbrechen) | 24 | 18 |
| EM (End of medium, Ende des Mediums) | 25 | 19 | SUB (Substitute, Substitut) | 26 | 1A |
| ESC (Escape) | 27 | 1B |
| FS (File separator, Dateitrenner) | 28 | 1C |
| GS (Group separator, Gruppentrenner) | 29 | 1D |
| RS (Record separator, Datensatz-Trenner) | 30 | 1E |
| US (Unit separator, Einheiten-Trenner) | 31 | 1F |
| SP (Space, Leerzeichen) | 32 | 20 |
| ! | 33 | 21 |
| " | 34 | 22 |
| # | 35 | 23 |
| $ | 36 | 24 |
| % | 37 | 25 |
| & | 38 | 26 |
| ' | 39 | 27 |
| ( | 40 | 28 |
| ) | 41 | 29 |
| * | 42 | 2A |
| + | 43 | 2B |
| , | 44 | 2C |
| - | 45 | 2D |
| . | 46 | 2E |
| / | 47 | 2F |
| 0 | 48 | 30 |
| 1 | 49 | 31 |
| 2 | 50 | 32 |
| 3 | 51 | 33 |
| 4 | 52 | 34 |
| 5 | 53 | 35 |
| 6 | 54 | 36 |
| 7 | 55 | 37 |
| 8 | 56 | 38 |
| 9 | 57 | 39 |
| : | 58 | 3A |
| ; | 59 | 3B |
| < | 60 | 3C |
| = | 61 | 3D |
| > | 62 | 3E |
| ? | 63 | 3F |
| @ | 64 | 40 |
| A | 65 | 41 |
| B | 66 | 42 |
| C | 67 | 43 |
| D | 68 | 44 |
| E | 69 | 45 |
| F | 70 | 46 |
| G | 71 | 47 |
| H | 72 | 48 |
| I | 73 | 49 |
| J | 74 | 4A |
| K | 75 | 4B |
| L | 76 | 4C |
| M | 77 | 4D |
| N | 78 | 4E |
| O | 79 | 4F |
| P | 80 | 50 |
| Q | 81 | 51 |
| R | 82 | 52 |
| S | 83 | 53 |
| T | 84 | 54 |
| U | 85 | 55 |
| V | 86 | 56 |
| W | 87 | 57 |
| X | 88 | 58 |
| Y | 89 | 59 |
| Z | 90 | 5A |
| [ | 91 | 5B |
| \ | 92 | 5C |
| ] | 93 | 5D |
| ^ | 94 | 5E |
| _ | 95 | 5F |
| ` | 96 | 60 |
| a | 97 | 61 |
| b | 98 | 62 |
| c | 99 | 63 |
| d | 100 | 64 |
| e | 101 | 65 |
| f | 102 | 66 |
| g | 103 | 67 |
| h | 104 | 68 |
| i | 105 | 69 |
| j | 106 | 6A |
| k | 107 | 6B |
| l | 108 | 6C |
| m | 109 | 6D |
| n | 110 | 6E |
| o | 111 | 6F |
| p | 112 | 70 |
| q | 113 | 71 |
| r | 114 | 72 |
| s | 115 | 73 |
| t | 116 | 74 |
| u | 117 | 75 |
| v | 118 | 76 |
| w | 119 | 77 |
| x | 120 | 78 |
| y | 121 | 79 |
| z | 122 | 7A |
| { | 123 | 7B |
| | | 124 | 7C |
| } | 125 | 7D |
| ~ | 126 | 7E |
| Unterdrückungstaste | 127 | 7F |
Der ASCII Code wurde für die englische Sprache etnwickelt, er enthält daher keine akzentuierten Zeiche oder
für andere Sprachen spezielle Zeichen. Um solche Zeichen zu codieren, muss man auf einen anderen Code
zruückgreifen. Daher wurde der ASCII Code auf 8 Bits (ein Byte) erweitert, um mehr Zeichen
codieren zu können (man spricht vom erweiterten ASCII-Code...)
Bei diesem Code stehen die Werte von 0 bis 255 (dann auf 8 Bits codiert, also einem Byte)
für die Groß- und Kleinbuchstaben, Zahlen, Satzzeichen und anderen Zeichen (akzentueierte Zeichen, im
Fall des Codesiso-latin1).
Der erweiterte ASCII Code ist nicht eindeutig und hängt von der verwendeten Plattform ab.
Die zwei am häufigsten verwendeten Zeichensätze des erweiterten ASCII- Codes sind :
Der Code EBCDIC (Extended Binary-Coded Decimal Interchange Code), entwickelt von IBM, erlaubt die Codierung von Zeichen auf 8 Bits. Obwohl er auf IBM Rechnern oft eingesetzt wird, war er nie so erfolgreich wie der ASCII-Code.
Der Code Unicode ist ein Codierungssystem für Zeichen auf 16 Bits, das 1991 entwickelt wurde. Das Unicode System ermöglicht die Darstellung jedes Zeichens auf 16 Bits, unabhängig vom Betriebssystem oder der Programmiersprache.
So vereint es beinahe alle existierenden Alphabete (arabisch, armenisch, kyrillisch, griechisch, hebräisch, latein,...) und ist mit dem ASCII-Code kompatibel.
Alle Unicode Codes sind verfügbar auf der Seitehttp://www.unicode.org.