2.81 Generate Bits
★★
-1 << k~(-1 << k) << j#include <stdio.h>
#include <assert.h>
/* 0 <= k < w */
int A(int k) {
return -1 << k;
}
/* 0 <= k,j < w */
int B(int k, int j) {
return ~(-1 << k) <<j;
}
int main() {
assert(A(3) == 0xFFFFFFF8);
assert(B(3, 4) == 0x00000070);
return 0;
}Last updated