Vollständige ASCII-Tabelle in DOS ausgeben

Häufig besteht die Notwendigkeit, schnell den ASCII-Code eines beliebigen Zeichens aus dem IBM-Zeichensatz zu erfahren. Mit unserem Programm ASCII.DEB haben Sie nun endlich eine recht komfortable Möglichkeit dazu! ASCII stellt sämtliche ASCII-Codes in einer Matrix auf dem Bildschirm dar. Die linke Bildschirmhälfte zeigt Zeichen mit den Codes von 0 bis 127 (7Fh), die rechte von 128 (80h) bis 255 (FFh). Über jeder Spalte steht der hexadezimale Wert des niederwertigen »Nibbles«, also die rechte Ziffer einer zweistelligen hexadezimalen Zahl. Jede Zeile der Tabelle beginnt mit dem hexadezimalen Code des höherwertigen »Nibbles« – die linke Ziffer des gesuchten Hex-Codes. Obwohl wir eher den Umgang mit dezimalen Zahlen gewöhnt sind, erweist sich die Darstellung mit hexadezimalen Zahlen als praktischer. Das erfordert zwar ein wenig Übung, ist jedoch für die Programmierung z. B. mit DEBUG schließlich vorteilhafter.

Zur Umrechnung der Codes in andere Zahlensysteme helfen Ihnen bei Bedarf unsere Programme CONVERT.DEB, HEX2DEZ.DEB oder HEX2BIN.DEB weiter. Wenn Sie den ASCII-Code eines Zeichens erfahren wollen, suchen Sie das Zeichen in der Tabelle und fügen die Koordinaten Zeile und Spalte zu einer zweistelligen hexadezimalen Zahl zusammen – fertig. Um auch die Steuerzeichen darstellen zu können, gibt ASCII den Text direkt über das BIOS auf den Bildschirm aus. Das hat zur Folge, daß Sie die Tabelle leider nicht in eine Datei oder z.B. auf den Drucker umleiten können. Weil einige Zeichen mit einem kleineren Code als 32 als Steuerzeichen interpretiert werden, würde die Umleitung auf einen Drucker sowieso nicht das gewünschte Ergebnis liefern. Unerwünschte Zeilen- oder Seitenvorschübe wären unter anderem die Folge.

Wollen Sie sich das langwierige Suchen eines oder mehrerer Zeichen in der Tabelle ersparen, können Sie die gewünschten Zeichen auch einfach als Parameter angeben – ASCII hebt sie selbständig in der Tabelle durch Farbänderung und Blinken hervor. Geben Sie z.B. »ASCII ÄÖÜäöü« ein, und ASCII markiert alle Umlaute in der Tabelle. Das Programm kann Ihnen damit oftmals die Arbeit stark erleichtern.

0 1 2 3 4 5 6 7 8 9 A B C D E F
0
1 §
2 ! # $ % & ( ) * + , . /
3 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4 @ A B C D E F G H I J K L M N O
5 P Q R S T U V W X Y Z [ \ ] ^ _
6 ` a b c e e f g h i j k l m n o
7 p q r s t u v w x y z { | } ~ .
0 1 2 3 4 5 6 7 8 9 A B C D E F
8 Ç ü é â ä à å ç ê ë è ï î ì Ä Å
9 É æ Æ ô ö ò û ù ÿ Ö Ü ¢ £ ¥ . ƒ
A á í ó ú ñ Ñ ª º ¿ . ¬ ½ ¾ ¡ « »
B . . . . . .
C . . .
D . . . . . . . . . . .
E α β Γ . . μ . . . Ω δ . .
F ± . . . . ° . . ³ ² .
Name: ASCII.DEB
Funktion: Gibt eine ASCII-Tabelle auf dem Bildschirm aus.
Übersetzung: DEBUG <ASCII.DEB
Prüfsumme: C9C1
Anwendung: ASCII [CHR][…] CHR = Zeichen, das ASCII in der Tabelle markieren soll.
Einschränkungen: Das Umleiten der Tabelle in eine Datei oder auf den Drucker ist nicht möglich.
A
CLD                 ;100
MOV AH,F            ;101
INT 10              ;103
CALL 185            ;105
CALL 18E            ;108
ADD DL,2            ;10B
CALL 18E            ;10E
MOV SI,19D          ;111
CALL 17A            ;114
CALL 133            ;117
ADD DL,2            ;11A
ADD By[144],70      ;11D
ADD SI,10           ;122
CALL 133            ;125
SUB SI,E            ;128
ADD By[144],80      ;12B
JNS 114             ;130
RET                 ;132
MOV BL,1E           ;133
CALL 166            ;135
MOV AL,[SI+3]       ;138
CALL 168            ;13B
MOV BL,1F           ;13E
CALL 166            ;140
MOV AL,0            ;143
MOV DI,82           ;145
MOV CX,[80]         ;148
SUB CX,2001         ;14C
JB 158              ;150
REPNZ SCASB         ;152
JNZ 158             ;154
MOV BL,9C           ;156
CALL 168            ;158
INC By[144]         ;15B
TEST By[144],F      ;15F
JNZ 13E             ;164
MOV AL,20           ;166
MOV CX,1            ;168
MOV [173],AL        ;16B
MOV AH,2            ;16E
INT 10              ;170
MOV AX,900          ;172
INT 10              ;175
ADD DL,CL           ;177
RET                 ;179
MOV DL,0            ;17A
MOV AH,2            ;17C
INT 10              ;17E
MOV AX,E0A          ;180
INT 10              ;183
MOV AH,3            ;185
INT 10              ;187
MOV DL,4            ;189
MOV BL,1E           ;18B
RET                 ;18D
MOV SI,19D          ;18E
MOV AL,[SI]         ;191
INC SI              ;193
CALL 168            ;194
CMP By[SI],0        ;197
JNZ 191             ;19A
RET                 ;19C
DB "   0 1 2 3 4 5 6 7 "
DB "8 9 A B C D E F ",0

RCX
C1
NASCII.COM
W
Q

Quelle: 200 Utilities für PC-/MS-DOS von Gerhard Schild und Thomas Jannot

💡 Sie haben einen Linkedin-Account? Dann können Sie meinen Newsletter „Der 18-Jährige, der einen Zettel schrieb und verschwand“ abonnieren ✔︎ 

Matomo