|
Startseite • Forum • Assembler
Probleme mit cmp
|
Arne Kröger
Registrierter Benutzer
Beiträge: 1
Anmeldejahr: 2006
|
08. April 2006 20:15:
Probleme mit cmp
|
|
Moin moin
Ich versuche gerade ein bisschen Assambler zu lernen und hänge an dem Punkt cmp fest.
Ich versuche eine eingegeben Zahl mit einem von mir vor eingestelltem wert zu vergleichen, bei richtiger Zahl, soll das Programm beendet werden, falls falsch springt das Programm zurück an den Anfang.
Aber auf meine Weise will es das nicht tun.
Ich poste mal einfach meinen Quellcode:
.MODEL SMALL
.STACK 100h
.DATA
TEXT DB "Geben sie eine Zahl ein:",10,13,"$"
RICHTIG DB "3","$"
.CODE
Start:
mov ax,@data
mov ds,ax
mov dx,OFFSET TEXT
mov ah,09h
int 21h
mov ah,01h
int 21h
MOV BX,1 ; Index auf zweites Byte von EINGABE
MOV AL,EINGABE[BX] ; tatsaechliche Laenge nach AX
MOV AH,0
ADD BX,1 ; Index auf drittes Byte von EINGABE
ADD BX,AX ; Index auf das Ende der Zeichenkette
MOV EINGABE[BX],'$' ; Dollarzeichen an das Ende der Zeichenkette
MOV AH,9 ; DOS-Funktionscode Zeichenkette ausgeben
MOV DX, OFFSET EINGABE ; DS X zeigt auf EINGABE
inc dx
inc dx
int 21h
cmp dx,3
ja wrong
jb wrong
jmp Ende
wrong:
jmp Start
Ende:
mov ah,4Ch
int 21h
END Start
Kann mir jemand helfen?
Vielen Dank im vorraus.
Arne Kröger
|
Optionen: |
Diesem Eintrag antworten
| Diesen Eintrag zitieren
|
|