Chinaunix首页 | 论坛 | 博客
  • 博客访问: 171300
  • 博文数量: 61
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 640
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-24 23:25
文章分类

全部博文(61)

文章存档

2011年(2)

2010年(37)

2009年(22)

我的朋友

分类: C/C++

2010-01-16 11:19:03

一个标准而古老的汇编程序员的技巧是:
a ^= b;
b ^= a;
a ^= b;
但是这样的代码在现代高级程序设计语言中没什么用处。临时变量基本上是
自由使用的, 一般上的三个赋值是:
int t = a;
a = b;
b = t;
这不只对读者更清晰, 更有可能被编译器辨别出来而变成最有效的代码(例
如有可能使用EXCH 指令)。后面的代码明显的可以用于指针和浮点值, 而不象
XOR 技巧只能用于整型。参见问题3.4 和10.2。

更多解释:
http://blog.chinaunix.net/u/22520/showart_234910.html

交换n个变量:
http://blog.chinaunix.net/u/22520/showart_403010.html
阅读(438) | 评论(0) | 转发(0) |
0

上一篇:SOAP over SSL

下一篇:How to use ctag with GNU Emacs

给主人留下些什么吧!~~