summaryrefslogtreecommitdiff
path: root/set_bitsets.c
diff options
context:
space:
mode:
authorAlex AUVOLAT <alex.auvolat@ens.fr>2013-12-05 08:52:04 +0100
committerAlex AUVOLAT <alex.auvolat@ens.fr>2013-12-05 08:52:04 +0100
commitcbffb4f8d60a8516b23aae1bdf07197787ddce2c (patch)
tree6f984a6a671866a06ebaaaf4566f4b73fe677eb0 /set_bitsets.c
parent3ab1dd7971402fd2d76d464e4e193132b4a9eb89 (diff)
downloadAlgoProg-Projet-cbffb4f8d60a8516b23aae1bdf07197787ddce2c.tar.gz
AlgoProg-Projet-cbffb4f8d60a8516b23aae1bdf07197787ddce2c.zip
Added comment
Diffstat (limited to 'set_bitsets.c')
-rw-r--r--set_bitsets.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/set_bitsets.c b/set_bitsets.c
index f59e61e..4ac8462 100644
--- a/set_bitsets.c
+++ b/set_bitsets.c
@@ -24,13 +24,13 @@ int nb_one(unsigned long long x) { //the hamming weight of x
assert(SCOD==64);
//1
- x = (x & 0x5555555555555555) + ((x >> 1) & 0x5555555555555555);
+ x = (x & 0x5555555555555555) + ((x >> 1) & 0x5555555555555555); // mask : 0101010101...
//2
- x = (x & 0x3333333333333333) + ((x >> 2) & 0x3333333333333333);
+ x = (x & 0x3333333333333333) + ((x >> 2) & 0x3333333333333333); // mask : 001100110011...
//4
- x = (x & 0x0F0F0F0F0F0F0F0F) + ((x >> 4) & 0x0F0F0F0F0F0F0F0F);
+ x = (x & 0x0F0F0F0F0F0F0F0F) + ((x >> 4) & 0x0F0F0F0F0F0F0F0F); // mask : 000011110000....
//8
- x = (x & 0x00FF00FF00FF00FF) + ((x >> 8) & 0x00FF00FF00FF00FF);
+ x = (x & 0x00FF00FF00FF00FF) + ((x >> 8) & 0x00FF00FF00FF00FF); // etc.
//16
x = (x & 0x0000FFFF0000FFFF) + ((x >> 16) & 0x0000FFFF0000FFFF);
//32