21.2 ASCII-Code |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ASCII | ASCII ist
die Abkürzung für American Standard Code for Information
Interchange. Insgesamt gibt es 128 solche Zeichen. Jeder Zahl
entspricht nach diesem Standard genau ein Zeichen, dabei wird von 0 bis
127 gezählt. So wird z.B. mit der Zahl 65 das Zeichen 'A' verschlüsselt.
Allerdings ist diese Verschlüsselung nicht wie in der Kryptologie üblich
geheim, sie ist standardisiert und wird von allen Rechnern benutzt. Um
auch andere Zeichen (chinesische, arabische, kyrillische etc. darstellen
zu können, reicht der ASCII Code nicht mehr aus. Mittlerweile gibt es den
Unicode, der eine Erweiterung des ASCII-Codes darstellt, diesen also als
Teilmenge enthält. Java unterstützt von Anfang an diesen Unicode. Wirr
werden später darauf zurückkommen.
Die Zahlen 0 bis 127 reichen in der
Binärdarstellung von 00000000
bis 01111111.
Wir erkennen, dass wir die Zeichen in einem Byte also 8 bit unterbringen.
und damit das höchste Bit zunächst nicht besetzen. Tatsächlich benutzt man
das höchste Bit als Prüfzeichen. Es wird so gesetzt, dass die Anzahl der
in der 8 Zeichen umfassenden Speicherbereich vorkommenden
1
en eine
gerade Zahl ist. Um das Prüfbit per Hand zu setzen, muss man den
ASCII-Code in Binärdarstellung kennen. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Übungsbeispiel 1 | Wir
schreiben ein Programm, das die ASCII-Codierung der Zahlen 0 bis 127
zeigt. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Download: ASCII.java |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Man
erkennt, das an manchen Stellen keine Zeichen stehen. Die Zahlen
0,
7
bis 10,
32.
So steht die 7
für BEL ein Glockenton, den man auch hört, wenn das Programm bei der
Ausgabe dieses Zeichen steht. Die Zeichen müssen nicht unbedingt auf
dem Bildschirm stehen, es können z.B. auch Steuerzeichen, Zeichen also im
abstrakteren Sinne sein. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Übungsbeispiel 2 | Schreiben
Sie ein Programm, dass die folgende Spezifikation erfüllt. Ein JFrame hat
ein editierbares Eingabefeld im 'Norden' und ein nicht editierbares
Ausgabefeld im 'Süden'. Im 'Zentrum' ist ein Button mit der Aufschrift
'Gib aus!'. Drückt man den Button, wird die im Eingabefeld eingetragene
Zahl als ASCII-Code interpretiert und das Zeichen im Ausgabefeld
ausgegeben. Falsche Eingaben sollen abgefangen werden, wobei das
Eingabefeld gelöscht und im Ausgabefeld der Kommentar 'Falsche Eingabe!'
erscheint. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bemerkung | Wir erkennen, dass dort, wo die Konsolenausgabe kein Zeichen liefert, auch dieses mal kein Zeichen geliefert wird. Bei manchen anderen liefert die Windowsausgabe ein kleines Rechteck, wo die Konsolenausgabe noch Zeichen liefert. Windows wicht hier also von DOS ab. Tatsächlich lassen sich auch Zahlen größer als 127 als Zeichen interpretierten. Es handelt sich dabei um den sog. erweiterten ASCII-Code: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
JApplet zum Testen |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zu | 21.3 Eine erste Verschlüsselung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
zur Startseite | www.pohlig.de (C) MPohlig 2003 |