Команда замены XCHG просто меняет местами содержимое двух ячеек. Эта команда может поменять местами содержимое двух регистров, или регистра и памяти. При этом в качестве операндов не могут использоваться сегментные регистры.
Команда XCHG заменяет три команды пересылки и не требует промежуточной ячейки памяти. Если бы команда замены не существовала, программе потребовалось бы три пересылки, чтобы обменять значения в регистре AX и в регистре BX. Сначала она должна была бы переслать содержимое регистра AX в рабочую ячейку, затем переслать содержимое регистра BX в регистр AX, и наконец, переслать содержимое рабочей ячейки в регистр BX. Команда XCHG одна выполняет эту операцию.