怎么使用算术运算指令实现两个寄存器内容的交换汇编语言
4个回答
2015-06-26
展开全部
假设现在有AL = 10H,BL = 12H
ADD AL,BL ;AL = 22H
MOV CL,AL ;CL = 22H
SUB CL,BL ;CL = 10H
MOV BL,CL ;BL = 10H
SUB AL,BL ;AL = 12H
执行上面的5句代码后
AL = 12H, BL = 10H
还有其他方法可以交换,例如用一个中间变量实现交换,用异或运算符实现交换,
最简单是使用XCHG交换
PS:如果不明白的地方。
ADD AL,BL ;AL = 22H
MOV CL,AL ;CL = 22H
SUB CL,BL ;CL = 10H
MOV BL,CL ;BL = 10H
SUB AL,BL ;AL = 12H
执行上面的5句代码后
AL = 12H, BL = 10H
还有其他方法可以交换,例如用一个中间变量实现交换,用异或运算符实现交换,
最简单是使用XCHG交换
PS:如果不明白的地方。
展开全部
假设现在有AL = 10H,BL = 12H
ADD AL,BL ;AL = 22H
MOV CL,AL ;CL = 22H
SUB CL,BL ;CL = 10H
MOV BL,CL ;BL = 10H
SUB AL,BL ;AL = 12H
执行上面的5句代码后
AL = 12H, BL = 10H
还有其他方法可以交换,例如用一个中间变量实现交换,用异或运算符实现交换,
最简单是使用XCHG交换
PS:如果不明白的地方,可以追问
ADD AL,BL ;AL = 22H
MOV CL,AL ;CL = 22H
SUB CL,BL ;CL = 10H
MOV BL,CL ;BL = 10H
SUB AL,BL ;AL = 12H
执行上面的5句代码后
AL = 12H, BL = 10H
还有其他方法可以交换,例如用一个中间变量实现交换,用异或运算符实现交换,
最简单是使用XCHG交换
PS:如果不明白的地方,可以追问
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
交换两个寄存器的内容,用XCHG指令,怎么可能用算术运算指令?
出这种题目的人,真是奇葩。
出这种题目的人,真是奇葩。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵,有些老师,吃的太饱了,撑得胡说八道的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询