計算 1 個 Word 裡有幾個 On 的 BitBrian Kernighan 演算法Yu·FollowOct 30, 2023--ShareBrian Kernighan 演算法將十進制數字減去 1 之後,可以發現在二進制的表示中,最低有效位(最右邊的 1)翻轉為 0,並將此位之後的所有位元全部翻轉,由 1 變 0、0 變 1。因此透過上述的原理,我們可以在迴圈中不斷執行 n AND (n-1),並計算 n 不等於 0 的執行次數,就可以得到 On Bit 的數量。這段程式碼的目的是使用 Brian Kernighan 的位元計數演算法。計算 32 位元整數 IN_DINT 中 On Bit 的數量,並將結果存儲在 QTY 變數中。AOI 變數AOI 程式AOI 應用在 LD參考資料Count set bits in an integerBrian Kernighan’s Algorithm to count set bits in an integer