作者:李强强上一篇,泥瓦匠基础地讲了下Java I/O : Bit Operation 位运算。这一讲,泥瓦匠带你走进Java中的进制详解。一、引子在Java世界里,99%的工作都是处理这高层。那么二进制,字节码这些会在哪里用到呢?自问自答:在跨平台的时候,就凸显神功了。比如说文件读写,数据通信,还...
分类:
编程语言 时间:
2015-06-14 12:23:53
阅读次数:
167
Problem DescriptionMemphis loves xor very musch.Now he gets an array A.The length of A is n.Now he wants to know the sum of all (lowbit(Ai xor Aj) (i,...
分类:
编程语言 时间:
2015-06-13 22:53:56
阅读次数:
226
前天几天研究了下JDK的Collection接口,本来准备接着研究Map接口,可是一查看HashMap类源码傻眼咯,到处是位运算实现,所以我觉得还是有必要先补补位运算知识,不然代码看起来有点费力。今天系统研究了下,现记录如下。 首先要明白一个概念,Java位运算是针对于整型数据类型的二进制进行的移位...
分类:
编程语言 时间:
2015-06-13 17:08:05
阅读次数:
121
C++ 运算符运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C++ 内置了丰富的运算符,并提供了以下类型的运算符:算术运算符关系运算符逻辑运算符位运算符赋值运算符杂项运算符本章将逐一介绍算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和其他运算符。算术运算符下表显示了 C++ 支持的...
分类:
其他好文 时间:
2015-06-13 15:31:04
阅读次数:
102
各种位运算的使用=== 1. & 按位与 === & 运算通常用于二进制取位操作,例如一个数 & 1的结果就是取二进制的最末位。这可以用来判断一个整数的奇偶,二进制的最末位为0表示该数为偶数,最末位为1表示该数为奇数.=== 2. | 按位或 === | 运算通常用于二进制特定位上的无条件赋值,例如...
分类:
其他好文 时间:
2015-06-13 09:46:23
阅读次数:
97
#include
int add(int a,int b)
{
if(b==0)
return a;
int sum,ret;
sum=a^b;
ret=(a & b)<<1;
return add(sum,ret);
}
void main()
{
int a=4;
int b=5;
int sum=0;
sum=add(a,b);
printf("%d\n",sum);...
分类:
其他好文 时间:
2015-06-12 19:26:52
阅读次数:
96
题目传送门 1 /* 2 题意:给出无向无环图,每一个点的度数和相邻点的异或和(a^b^c^....) 3 图论/位运算:其实这题很简单。类似拓扑排序,先把度数为1的先入对,每一次少一个度数 4 关键在于更新异或和,精髓:a ^ b = c -> a ...
分类:
其他好文 时间:
2015-06-11 21:10:45
阅读次数:
101
1、按位运算 "与"运算:参加运算的两个数据,按二进制位进行“与”运算。 运算规则:0&0=0;0&1=0;1&0=0;1&1=1; 即:两位同时为“1”,结果才为“1”,否则为0 “或”运算:参加运算的两个对象,按二进制位进行“或”运算。 运算规则:0|0=0; 0|1=1;1|0...
分类:
其他好文 时间:
2015-06-11 00:06:02
阅读次数:
144
C语言提供了六种位运算符: & 按位与 | 按位或 ^ 按位异或 ~ 取反 > 右移,正数高位补0,负数由计算机决定 循环左移k次(x> (32-k)), 循环右移k次(x>>k) | (x 括号成员第一; //括号运算符[]() 成员运算符. ->全体单目第二; ...
分类:
其他好文 时间:
2015-06-09 21:38:18
阅读次数:
131
原文地址CodeProject目录介绍“二进制-十进制”相互转换十进制->二进制二进制->十进制OR运算符(按位或|)OR运算符工作方式FlagsAttributeAND运算符(按位与&)XOR运算符(按位异或^)XOR运算符工作方式使用XOR交换两变量值的算法使用XOR加密NOT运算符(按位非~)...