ビット操作の観点から、C# コードの次の行を理解する方法
a = 15 & ( a ^ (b << 3));
次のコード セグメントのビット操作、特に宣言uint8_t a
とuint8_t b
int decode(const void* raw_in, void* raw_out, uint32_t password, size_t len)
{
## some code here ##
const uint8_t* in = (const uint8_t*)raw_in;
uint32_t seed = password ^ 0x48879c19u;
for (size_t i = 0 ; i < len; ++i) {
uint8_t a = (in[i] << 4) ^ seed;
uint8_t b = (((uint32_t)in[i]) << 7 ^ seed) >> 11;
.......