Это кажется тривиальным вопросом, но я потерялся.
В этом примере character - это 2-байтовая переменная, а регистр bx - это один байт.Я пытаюсь сделать cmp bx, [character], что явно не сработает из-за разницы в размерах.
character
bx
cmp bx, [character]
Я пытаюсь сравнить bx только с первым байтом character.Мысли?
bx Размер регистра составляет 16 бит и состоит из двух 8-битных bl и bh !
Для 16-битного cmp вы можете использовать префикс:
cmp bx, word ptr[character]
для 8 бит bl cmp
cmp bl, byte ptr[character]
или 8 бит чч смп
cmp bh, byte ptr[character + 1]