LODS (REP) строка-источник 9+13(17)/повтор 1
LOOP короткая метка 17 или 5 2
LOOPE короткая метка 18 или 6 2
LOOPNE короткая метка 19 или 5 2
LOOPNZ короткая метка 19 или 5 2
LOOPZ короткая метка 18 или 6 2
MOV память, аккумулятор 10(14) 3
MOV аккумулятор, память 10(14) 3
MOV регистр, регистр 2 2
MOV регистр, память 8(12) + EA 2-4
MOV память, регистр 9(13) + EA 2-4
MOV регистр, значение 4 2-3
MOV значение, регистр 10(14) + EA 3
MOV сегментный регистр, словный регистр 2 2
MOV сегментный регистр, слово памяти 8(12) + EA 2-4
MOV словный регистр, сегментный регистр 2 2
MOV слово памяти, сегментный регистр 9(13) + EA 2-4
MOVS приемник, источник 18(26) 1
MOVS (REP) приемник, источник 9+17(25)/повтор 1
MUL байтный регистр 70-77 2
MUL словный регистр 118-133 2
MUL байт памяти (76-83) + EA 2-4
MUL слово памяти (128-143) + EA 2-4
NEG регистр 3 2
NEG память 16(24) + EA 2-4
NOP 3 1
NOT регистр 3 2
NOT память 16(24) + EA 2-4
OR регистр, регистр 3 2
OR регистр, память 9(13) + EA 2-4
OR память, регистр 16(24) + EA 2-4
OR регистр, значение 4 3-4
OR память, значение 17(25) + EA 3-6
OR аккумулятор, значение 4 2-3
OUT байт значения, аккумулятор 10(14) 2
OUT DX, аккумулятор 8(12) 1
POP регистр 12 1
POP сегментный регистр 12 1
POP память 25 + EA 2-4
POPF 12 1
PUSH регистр 15 1
PUSH сегментный регистр 14 1
PUSH память 24 + EA 2-4
PUSHF 14 1
RCL регистр, 1 2 2
RCL регистр, CL 8+4/бит 2
RCL память, 1 15(23) + EA 2
RCL память, 1 20(28)+EA+4/бит 2
RCR регистр, 1 2 2
RCR регистр, CL 8+4/бит 2
RCR память, 1 15(23) + EA 2
RCR память, 1 20(28)+EA+4/бит 2
REP 2 1
REPE 2 1
REPNE 2 1
REPZ 2 1
REPNZ 2 1
RET (внутрисегментный, без POP) 20 1
RET (внутрисегментный, с POP) 24 3
RET (межсегментный, без POP) 32 1
RET (межсегментный, с POP) 31 3
ROL регистр, 1 2 2
ROL регистр, CL 8+4/бит 2
ROL память, 1 15(23) + EA 2
ROL память, 1 20(28)+EA+4/бит 2
ROR регистр, 1 2 2
ROR регистр, CL 8+4/бит 2
ROR память, 1 15(23) + EA 2
ROR память, 1 20(28)+EA+4/бит 2
SAHF 4 1
SAL регистр, 1 2 2
SAL регистр, CL 8+4/бит 2
SAL память, 1 15(23) + EA 2
SAL память, 1 20(28)+EA+4/бит 2
SAR регистр, 1 2 2
SAR регистр, CL 8+4/бит 2
SAR память, 1 15(23) + EA 2
SAR память, 1 20(28)+EA+4/бит 2
SBB регистр, регистр 3 2
SBB регистр, память 9(13) + EA 2-4
SBB память, регистр 16(24) + EA 2-4
SBB регистр, значение 4 3-4
SBB память, значение 17(25) + EA 3-6
SBB аккумулятор, значение 4 2-3
SCAS приемник 15(19) 1
SCAS (REP) приемник 9+15(19)/повтор 1
SHL регистр, 1 2 2
SHL регистр, CL 8+4/бит 2
SHL память, 1 15(23) + EA 2
SHL память, 1 20(28)+EA+4/бит 2
SHR регистр, 1 2 2
SHR регистр, CL 8+4/бит 2
SHR память, 1 15(23) + EA 2
SHR память, 1 20(28)+EA+4/бит 2
STC 2 1
STD 2 1
STI 2 1
STOS приемник 11(15) 1
STOS (REP) приемник 9+10(14)/повтор 1
SUB регистр, регистр 3 2
SUB регистр, память 9(13) + EA 2-4
SUB память, регистр 16(24) + EA 2-4
SUB регистр, значение 4 3-4
SUB память, значение 17(25) + EA 3-6
SUB AL, значение 4 2-3
TEST регистр, регистр 3 2
TEST регистр, память 9(13) + EA 2-4
TEST регистр, значение 5 3-4
TEST память, значение 11 + EA 3-6
TEST AL, значение 4 2-3
WAIT 3 + 5n 1
XCNG AL, словный регистр 3 1
XCNG память, регистр 17(25) + EA 2-4
XCNG регистр, регистр 4 2
XLAT таблица-источник 11 1
XOR регистр, регистр 3 2
XOR регистр, память 9(13) + EA 2-4
XOR память, регистр 16(24) + EA 2-4
XOR регистр, значение 4 3-4
XOR память, значение 17(25) + EA 3-6
XOR AL, значение 4 2-3
Приложение Ж. Hабор инструкций микропроцессора 80286.
Придерживаясь схемы, принятой в данной книге, здесь перечисле-
ны инструкции только для режимов реальной адресации. Более мощный
микропроцессор 80286 не требует добавочного времени на вычисление
эффективных адресов, нет также отличия в выполнении команд над
байтными и словными переменными. Звездочка указывает, что Вы
должны добавить один такт, если при вычислении смещения сумми-
руются три элемента. Буква m указывает число байтов следующей
инструкции, а n - число повторений.
такты байты
AAA 3 1
AAD 14 2
AAM 16 2
AAS 3 1
ADC регистр/память с регистром 2,7* 2
ADC значение с регистром/памятью 3,7* 3-4
ADC значение с аккумулятором 3 2-3
ADD регистр/память с регистром 2,7* 2
ADD значение с регистром/памятью 3,7* 3-4
ADD значение с аккумулятором 3 2-3
AND регистр/память с регистром 2,7* 2
AND значение с регистром/памятью 3,7* 3-4
AND значение с аккумулятором 3 2-3
CALL прямой внутри сегмента 7+m 3
CALL косвенный через регистр/память внутри сег-та 7+m,11+m* 2
CALL прямой между сегмента 13+m 5
CBW 2 1
CLC 2 1
CLD 2 1
CLI 3 1
CMC 2 1
CMP регистр/память с регистром 2,6* 2
CMP регистр с регистром/памятью 2,7* 2
CMP значение с регистром/памятью 3,6* 3-4
CMP значение с аккумулятором 3 2-3
CMPS повторенный CX раз 5 + 9n 2
CMPS байт или слово 8 1
CWD 2 1
DAA 3 1
DAS 3 1
DEC регистр/память 2,7* 2
DEC регистр 2 1
DIV байтный регистр 14 2
DIV словный регистр 22 2
DIV байт памяти 17* 2
DIV слово памяти 25* 2
ESC 9-20* 2
HLT 2 1
IDIV байтный регистр 17 2
IDIV словный регистр 25 2
IDIV байт памяти 20* 2
IDIV слово памяти 28* 2
IMUL байтный регистр 13 2
IMUL словный регистр 21 2
IMUL байт памяти 16* 2
IMUL слово памяти 24* 2
IMUL умножение на целое значение 21,24* 3-4
IN фиксированный порт 5 2
IN переменный порт 5 1
INC регистр/память 2,7* 2
INC регистр 2 1
INS строка 5 + 4m 2
INS байт или слово 5 1
INT указанный тип 23 + m 2
INT тип 3 23 + m 1
INTO 24 + m или 3 1
IRET 17 + m 1