простой 8086 сравнить инструкцию - PullRequest
1 голос
/ 26 апреля 2011

В последнее время у меня есть домашнее задание по сборке 8086, я пытаюсь использовать инструкцию CMP, но не могу понять это правильно. Вот код:

MOV AL, 88h
   CMP AL, 24h
   JL  exit
label:
   mov al,4h
exit:
   RET

когда я его отлаживаю, после jl он сразу переходит на exit: но следующий код работает нормально

MOV AL, 88
   CMP AL, 24
   JL  exit
label:
   mov al,4h
exit:
   RET

почему это происходит?

1 Ответ

4 голосов
/ 26 апреля 2011

JL использует условие со знаком .С точки зрения подписи 88h является отрицательным числом.Если вы хотите, чтобы 24 часа обрабатывались как менее 88 часов, у вас есть пара вариантов - наиболее очевидным будет использование условия без знака, которое будет означать использование jb вместо jl.

...