Величина операнда i (impendence) непосредственно указывается в поле команды и может быть задана числом в десятичной, двоичной и шестнадцатеричной системах счисления (последний символ числа должен быть, соответственно, D (или никакой), B и H) или идентификатором, а также задана простым выражением, в котором указанные элементы связаны символами арифметических операций: +, -, * и /. Идентификатор (с соответствующим именем, например, const) должен быть предварительно описан в программе директивой типа: const equ 1024 или const = 1024.
Примеры непосредственной адресации:
MOV AX, 1024D; MOV AL, 64; MOV BX, 1AH; MOV CH, 1011B;
MOV AX, const; MOV AX, 156*10H/2
и т. п.
Следует помнить, что диапазон чисел, посылаемых в регистры, ограничивается вместимостью последнего: в 1-байтовый регистр (AH, AL, BH и т. д.) можно посылать числа в диапазоне от 0 до +255 (целое без знака) или от –128 до +127 (целое со знаком); в 2-байтовый регистр (AX, BX, CX и т. д.) — от 0 до +65 535 (целое без знака) или от –32 768 до +32 767 (целое со знаком).
Прямая адресация регистров МПП
В качестве адреса операнда указывается имя регистра (его символьное обозначение: AX, AL, AH, BX, BL и т. д.). Примеры:
MOV AX, BX
MOV BX, DX
MOV AH, BL
Необходимо следить, чтобы разрядность второго операнда (его регистра) соответствовала разрядности принимающего регистра.