Итак, у меня есть простой код сборки в 8086, который сравнивает значение в переменной value со значением 100 и, если оно больше, выводит: «Значение больше 100», а если нет: «The значение не превышает 100 ".
Вот код:
data segment
string db "The value is larger$"
value db 80
right db "The value is greater than 100$"
wrong db "The value is not greater than 100$"
ends
stack segment
dw 128 dup(0)
ends
code segment
start:
mov ax, data
mov ds, ax
mov es, ax
lea ax, value
cmp ax, 100d
jae StatementWrong
StatementRight:
lea dx, right
jmp Ending
StatementWrong:
lea dx, wrong
Ending:
mov ah, 9
int 21h
mov ah, 1
int 21h
mov ax, 4c00h
int 21h
ends
Однако проблема не в том, какое значение я имею, будет ли оно больше или нет 100, всегда выполняется сегмент StatementRight .
Есть идеи о том, что может быть причиной проблемы?