Если мы используем инструкцию с непосредственным операндом, то мы должны указать, сколько байтов получит наш операнд. Поэтому мы должны использовать ключевое слово, такое как byte, word или dword, чтобы сообщить ассемблеру, сколько следующих байтов в оперативной памяти мы хотим получить доступ.
mov byte ptr[bx+si], 01h
mov word ptr[bx+si], 0001h
mov dword ptr[bx+si], 00000001h
Но если мы используем регистр в качестве операнда (при этом он известен среди байтов), то нам не нужно его указывать (для того, чтобы листинг стал меньше с более легким обзором).
mov [bx+si], al
mov al, [bx+si]
mov [bx+si], ax
mov ax, [bx+si]
Исключение с MASM и регистром DWORD в качестве операнда.
mov dword ptr[bx+si], eax
mov eax, dword ptr[bx+si]
Кортик
person
Dirk Wolfgang Glomp
schedule
17.04.2013
bx
- это 16-битный регистр, который больше байта, если вам нужен только байт, содержащийся вbx
, вам нужно получить доступ кbl
его младшей 8-битной части. - person Seki   schedule 26.03.2013