Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
I8086.DOC
Скачиваний:
50
Добавлен:
02.05.2014
Размер:
1.36 Mб
Скачать
      1. Xchg– обмен информацией

90+rw

XCHG AX, r16

AX ↔ r16

90+rw

XCHG r16, AX

r16 ↔ AX

86 /r

XCHG r/m8, r8

r/m8r8

86 /r

XCHG r8, r/m8

r8r/m8

87 /r

XCHG r/m16, r16

r/m16r16

87 /r

XCHG r16, r/m16

r16r/m16

Описание.Эта инструкция меняет местами содержимое своих операндов.

Флажкине изменяются.

      1. Xlatb– табличная перекодировка

D7

XLATB

AL:= [BX+AL]

Описание.Эта инструкция перекодирует по таблице значение регистраAL.

Начальный адрес 256-байтовой таблицы перекодировки содержится в регистре BX. Перекодировка заключается в том, что из ячейки таблицы, номер которой содержится в регистреAL, извлекается байт и заносится в регистрAL.

Флажкине изменяются.

      1. Xor– исключающее или

30 /r

XOR r/m8, r8

r/m8:= r/m8 XOR r8

31 /r

XOR r/m16, r16

r/m16:= r/m16 XOR r16

32 /r

XOR r8, r/m8

r8:= r8 XOR r/m8

33 /r

XOR r16, r/m16

r16:= r16 XOR r/m16

34 ib

XOR AL, imm8

AL:= AL XOR imm8

35 iw

XOR AX, imm16

AX:= AX XOR imm16

80 /6 ib

XOR r/m8, imm8

r/m8:= r/m8 XOR imm8

81 /6 iw

XOR r/m16, imm16

r/m16:= r/m16 XOR imm16

Описание.Выполняется операция “исключающее ИЛИ” между операндами инструкции, результат заносится на место первого операнда.

ФлажкиOFиCFочищаются.

Флажки SF,ZFиPFустанавливаются в соответствии с результатом.

Состояние флажка AFне определено.

    1. Префиксы машинных инструкций

      1. Ds:/es:/ss:/cs:– префиксы замены сегмента

26

ES:

использование сегмента ES

2E

CS:

использование сегмента CS

36

SS:

использование сегмента SS

3E

DS:

использование сегмента DS

Описание.Префикс замены сегмента позволяет инструкции использовать операнд, расположенный не в сегменте, используемом по умолчанию, а в явно указанном сегменте.

В инструкциях обработки данных с явно заданными операндами (например, MOV,ADD,NEGи т.п.) один из операндов (или единственный операнд) может находиться в памяти. Для доступа к нему по умолчанию используется сегментный регистрSS(если при вычислении адреса операнда используется содержимое регистраBP) или сегментный регистрDS(во всех остальных случаях). С помощью префикса замены сегмента можно обратиться к операнду с использованием любого из четырёх сегментных регистров. Например, инструкцияMOV AX,[BP]загружает в регистрAXсодержимое слова памяти по адресуSS:BP, однако инструкцияMOV AX,ES:[BP]загрузит содержимое слова по адресуES:BP.

В инструкциях обработки строк операнды адресуются с помощью регистровых пар DS:SIиES:DI. Вместо сегментного регистраDSможет использоваться любой сегментный регистр, для чего необходимо задать соответствующий префикс замены сегмента. Сегментный регистрES, используемый совместно с регистромDI, заменён быть не может.

Доступ к стековой памяти с использованием указателя стека SPвсегда подразумевает использование сегментного регистраSS, который подменён быть не может.