吹静静

欢迎QQ交流:592590682

交换指令XCHG是两个寄存器,寄存器和内存变量之间内容的交换指令,两个操作数的数据类型要相同,可以是一个字节,也可以是一个字,也可以是双字 。其指令格式如下:
XCHG Reg/Mem, Mem/Reg,Reg/Reg
 
【例】
XCHG CH,AL   寄存器之间相互交换,字节操作
XCHG BX,SI     寄存器之间相互交换,字操作。
XCHG [SI],CX   存储器与寄存器之间交换,字操作
 
该指令的功能和MOV指令不同,后者是一个操作数的内容被修改,而前者是两个操作数都会发生改变。寄存器不能是段寄存器,两个操作数也不能同时为内存变量。 XCHG指令不影响标志位。
 
【功能】: 交换两个操作数的数据,(dst)↔(src)
【语法】: XCHG
【格式】: XCHG r1,r2 XCHG m,r XCHG r,m
 
XCHG指令不允许的情况有以下四种:
1. 不能同时都为内存操作数
2. 任何一个操作数都不能为段寄存器
3. 任何一个操作数不能为立即数
4. 两个操作数的长度不能不相等
posted on 2018-07-14 15:04  吹静静  阅读(2276)  评论(0编辑  收藏  举报