Я изучаю ассемблер и мне нужно написать программу, которая должна выводить «да» или «нет» в зависимости от того, входит ли число в интервал.Но 0 всегда отображается.Как мне нужно изменить код программы, чтобы получить правильный результат?
Я пытался добавить новую метку для чисел, включенных в интервал, но я получил аналогичный результат.
short a = 5, b = 10;
short n;
cout << "Enter number:";
cin >> n;
short yes = 1;
__asm
{
mov ax, a
mov bx, b
mov cx, n
cmp ax, bx
ja no
cmp bx, cx
ja no
jmp exit
no:
mov yes, 0
exit:
}
if (yes == 0) cout << "no";
else cout << "yes";
Я ожидаю получить «да», если число ввода больше 4 или меньше 11, но фактический результат всегда «нет».