Try   HackMD

2017q3 Homework1 (clz)

contributed by <BreezeDa>

Count leading Zero

顧名思義,便是計算從 MSB 開始往 LSB 算起直到碰到非 0 的 bit 為止共有幾個為 0 的 bit

以下 code 可以利用 31 - clz 而得到 log2(N) 的整數部分

BITS = 31; for (; i < 32; --BITS) { if (N & 0x80000000) break; N <<= 1; }

最後 BITS 的結果便是 log2(N)

參考資料