![]() Home | ![]() Der Debugger DEBUG | ![]() Zurück zur Assemblerauswahlseite |
8086 Assembler (MS-DOS): |
Das kleine Programm JN.COM nimmt ein einziges Zeichen von der Tastatur entgegen. Wurde die Taste "J" angeschlagen, liefert es den Returncode 0 ab. Wurde eine andere Taste angeschlagen, kehrt es mit dem Returncode 1 zurück. Man kann es benutzen, um in einer BAT-Steuerdatei eine Entscheidung durch Eingabe von „J” oder „N” abzufragen. Als „J” nimmt das Programm J oder j entgegen. Sonstige Tasten gelten als „N”.
Das Programm ist nur 18 Bytes lang. Eine passende BAT-Datei zur Benutzung des Programmes kann diesen Inhalt haben: @echo off echo Bitte J oder N eingeben! jn.com if errorlevel 1 echo Ihre Antwort war: Nein if errorlevel 1 goto fertig echo Ihre Antwort war: Ja :fertig Dass Programm lässt sich mit DEBUG assemblieren und lauffähig abspeichern: Vor dem Aufruf von DEBUG gab es noch keine Datei "JN.COM". Nach dem Assemblieren wird das Registerpaar BX:CX auf den Inhalt 0000:0012 gestellt. Dies ist die Programmlänge in hexadezimaler Schreibweise. Tastatureingaben sind in blauer Schrift dargestellt. D:\dos\ML\Test>debug jn.com -a 1A9D:0100 mov ah,8 1A9D:0102 int 21 1A9D:0104 or al,20 1A9D:0106 cmp al,6a 1A9D:0108 mov al,0 1A9D:010A jz 10e 1A9D:010C inc al 1A9D:010E mov ah,4c 1A9D:0110 int 21 1A9D:0112 -r cx CX 00D6 :12 -r AX=0000 BX=0000 CX=0012 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000 DS=1A9D ES=1A9D SS=1A9D CS=1A9D IP=0100 NV UP EI PL NZ NA PO NC 1A9D:0100 B408 MOV AH,08 -w Writing 00012 bytes -q Dass Programm als Assembler-Quellprogramm: .MODEL TINY ;===================================== ; Ganz kleines Assemblerprogramm ;====================================== ; .CODE ORG 100h _start: mov ah,08h ;lese 1 Zeichen von Tastatur int 21h or al,20h ;Eingabe wird Kleinschrift cmp al,'j' mov al,0 ;Return-Code auf 0 je fertig inc al ;Return-code auf 1 falls nicht "j" fertig: mov ah,4ch int 21h END _start |