永发信息网

交换两个数汇编指令

答案:5  悬赏:10  手机版
解决时间 2021-01-03 08:41
一个很简单的C函数,要求用汇编实现:
inline void SWAP(int* left, int* right)
{
if (left == right) return;
*right ^= *left;
*left ^= *right;
*right ^= *left;
}

请详细一点!
最佳答案
如果你的int是16位整数的话就是这个了
mov ax,left
xchg ax,right
mov left,ax
而如果是32位
mov eax,left
xchg eax,right
mov left,eax
全部回答
xchg 指令可以完成这个任务
xchg left ,right xchg right,left
依C调用约定 xor实现 SWAP PROC FAR POP ESI POP EDI LODSD XOR EAX,[EDI] XOR [EDI],EAX ;XOR EAX,[EDI] ;MOV [ESI],EAX XOR [ESI],EAX RETF SWAP ENDP xchg实现 SWAP PROC FAR POP ESI POP EDI LODSD XCHG EAX,[EDI] MOV [ESI],EAX RETF SWAP ENDP
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
觉木街道办事处地址在什么地方?想过去办事
单选题在西藏自治区,除藏族外,还有汉、回、
你好扣扣,我是一名本科会计学生,唉,这几天
急,急,怎么查找旺旺名
求十分十二寸歌曲下载,要只有林子祥一人唱的
东方网络什么时候复牌
贫困却不潦倒的风度天歌阅读答案
单选题2010年5月15日起,大型音乐舞蹈史诗《
2017年1月增值税进项发票已入账未认证,可以
求《寻找爱的冒险》全集百度云资源
下列属于李嘉图生活时代的英国经济社会状况的
在工地上做事,承建商不给包工头钱,工人可以其
单选题下列关于物种的叙述,不正确的是A.物种
小女子弱弱的请问高手,MINI 5PINAM USB接口
农行贷款6万为期三年总需还多少钱?
推荐资讯
解不等式组5x+2小于7x-6和x+6/3大于等于x/2+1
香水英语怎么说
镀金是合金吗
下列各句括号中补出的省略成分,不正确的一项
下列选项中,划线字的读音完全正确的一项是:
手机直播怎么下载
中国民生银行卡密码输入错误3次,第二天能不
说黑人好吃懒做这是借口其实是太丑了对不对
数量不等于质量用英语怎么翻译
在内蒙临河有两万元能做个什么小生意
it comes to traffic rules, I often come ac
梅州市梅县区地税局城区分局办公地址在什么地
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?