用宏实现奇偶位的调换

2016-11-04 16:44 阅读 677 次 评论 0 条

宏实现奇偶调换

思路:首先,博主先总体说一下思路,计算机只能识别二进制0,1序列,所以我们以第0位作为奇数位1,第2位作为偶数位来实现调换。以此类推:0->1 2->3 4->5实现后面数字的交换。那么具体怎么交换呢,没错,使用位运算符,&和|,比如输入一个数,你要得到他的奇数位,就应该让这个数与0x55555555(16进制数)按位与,偶数位就0xAAAAAAAA按位与,接下来要进行交换,得到的奇数位左移1位,就会到达偶数位,得到的偶数位右移1位就到达了奇数位。然后将两个结果进行|按位或运算,起一个结合奇偶数对应位置的作用。

源代码及注释

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:用宏实现奇偶位的调换 | 术与道的分享
分类:编程素养 标签:,
1024do.com导航_术与道导航平台

发表评论


表情