Ich habe versucht herauszufinden, warum mein Code nicht funktioniert.Warum springt dieser Code niemals zu der Bezeichnung "True"?
Ich brauche diese cmp in einer größeren Version dieses Codes als Hauptmenü Optionen zu fragen implementieren mit bestimmten Aktionen jedoch fortfahren, wenn al, '1'
Vergleich nicht je
zu erkennen und es springt direkt zu jne
.
Ich weiß, dass das wahrscheinlich der Fehler beim Vergleich ist, aber was ist der richtige Weg, es zu tun?
.model small
.stack 100h
.data
wm db 0ah, 0dh, "Welcome! please select one of the following options: $"
op1 db 0ah, 0dh, "Please submit 1 to true and 2 to false: $"
op1_1 db 0ah, 0dh, "its true!!! $"
op1_2 db 0ah, 0dh, "its false!!!! $"
.code
main PROC
mov ax,@data
mov ds, ax
mov dx, offset wm
mov ah, 09h
int 21h
mov dx, offset op1
mov ah, 09h
int 21h
mov ah, 0ah
int 21h
cmp al, '1'
je true
jne false
success:
mov ah,4ch ; function: DOS Exit Program
mov al, 0 ; specify return code 0
int 21h ; adios amigo!
true:
mov dx, offset op1_1
mov ah, 09h
int 21h
jmp success
false:
mov dx, offset op1_2
mov ah, 09h
int 21h
jmp success
main ENDP
END main
Ziehen Sie Ihre Fragen lieber in Frage, anstatt sie mit Symbolen zu markieren. –
Die Frage wurde fett formatiert, damit Sie die Frage vom Code trennen können. Ich habe den Code als Referenz von dem, was ich mache, aber ich habe zuerst angegeben, was ich erreichen wollte –
Sie sollten Ihren gesamten Code in einen Codeblock stecken. Ich weiß nicht asm so kann nicht sicher sein, dass ich es richtig mache. –