• 汇编语言XCHG指令:交换两个操作数内容

    XCHG(交换数据)指令交换两个操作数内容。该指令有三种形式:

    XCHG reg, reg
    XCHG reg, mem
    XCHG mem, reg

    除了 XCHG 指令不使用立即数作操作数之外,XCHG 指令操作数的要求与《MOV指令》一节中介绍的 MOV 指令操作数要求是一样的。

    在数组排序应用中,XCHG 指令提供了一种简单的方法来交换两个数组元素。下面是几个使用 XCHG 指令的例子。

    xchg ax,bx      ;交换 16 位寄存器内容
    xchg ah,al      ;交换 8 位寄存器内容
    xchg var1,bx    ;交换 16 位内存操作数与 BX 寄存器内容
    xchg eax,ebx    ;交换 32 位寄存器内容

    如果要交换两个内存操作数,则用寄存器作为临时容器,把 MOV 指令与 XCHG 指令一起使用:

    mov ax,val1
    xchg ax,val2
    mov val1,ax

全部加载完成